# AirShelf Backend All backend code lives under `AirShelf/core/backend` by project decision. ## Local bootstrap ```bash cd /Users/maidong/Desktop/zyc/qiyuan_gitea/AirShelf/core/backend python3.12 -m venv .venv source .venv/bin/activate pip install -r requirements.txt cp .env.example .env python manage.py migrate python manage.py runserver 0.0.0.0:8000 ``` Start workers in separate terminals: ```bash cd /Users/maidong/Desktop/zyc/qiyuan_gitea/AirShelf/core/backend source .venv/bin/activate celery -A airshelf worker -l info ``` `ffmpeg` must be available on `PATH` for Stage5 export jobs. ## Runtime layout - Django project: `airshelf` - Domain apps: `apps/*` - Settings module: `airshelf.settings.development` - Celery app: `airshelf.celery` Secrets must be supplied by environment variables or `.env`; never commit values from `account.md`. ## Useful commands ```bash python manage.py check python manage.py makemigrations --check --dry-run python manage.py migrate python manage.py bootstrap_volcano_models python manage.py test apps.accounts apps.projects apps.billing ```