Django

Django Apps

Create the tasks app

Django Apps — tasks

Apps are reusable modules. TaskBoard's domain logic lives in a tasks app.

Create the app

python manage.py startapp tasks
tasks/
  models.py
  views.py
  urls.py      # create this file
  admin.py
  migrations/
  templates/tasks/

Register in INSTALLED_APPS

INSTALLED_APPS = [
    "django.contrib.admin",
    "django.contrib.auth",
    "django.contrib.contenttypes",
    "django.contrib.sessions",
    "django.contrib.messages",
    "django.contrib.staticfiles",
    "tasks",
]

AppConfig (recommended)

# tasks/apps.py
from django.apps import AppConfig

class TasksConfig(AppConfig):
    default_auto_field = "django.db.models.BigAutoField"
    name = "tasks"
# settings: "tasks.apps.TasksConfig"

Project vs app

Project = settings + root URLs. App = feature (models, views, templates). Split apps when boundaries are clear—e.g. billing vs tasks.