major refactor

This commit is contained in:
2026-03-13 01:07:02 -03:00
parent eaaf2ad60c
commit 3eeedebb15
61 changed files with 441 additions and 242 deletions

View File

@@ -71,12 +71,12 @@ docker compose logs -f
docker compose logs -f celery
# Create admin user
docker compose exec django python manage.py createsuperuser
docker compose exec django python admin/manage.py createsuperuser
```
## Code Generation
Models are defined as dataclasses in `schema/models/` and generated via `modelgen`:
Models are defined as dataclasses in `core/schema/models/` and generated via `modelgen`:
- **Django ORM** models (`--include dataclasses,enums`)
- **Pydantic** schemas (`--include dataclasses,enums`)
- **TypeScript** types (`--include dataclasses,enums,api`)
@@ -113,26 +113,29 @@ See [docs/media-storage.md](docs/media-storage.md) for full details.
```
mpr/
├── api/ # FastAPI application
│ ├── routes/ # API endpoints
│ └── schemas/ # Pydantic models (generated)
├── core/ # Core utilities
│ └── ffmpeg/ # FFmpeg wrappers
├── admin/ # Django project
│ ├── manage.py # Django management script
│ └── mpr/ # Django settings & app
│ └── media_assets/# Django app
├── core/ # Core application logic
│ ├── api/ # FastAPI + GraphQL API
│ │ └── schema/ # GraphQL types (generated)
│ ├── ffmpeg/ # FFmpeg wrappers
│ ├── rpc/ # gRPC server & client
│ │ └── protos/ # Protobuf definitions (generated)
│ ├── schema/ # Source of truth
│ │ └── models/ # Dataclass definitions
│ ├── storage/ # S3/GCP/local storage backends
│ └── task/ # Celery job execution
│ ├── executor.py # Executor abstraction
│ └── tasks.py # Celery tasks
├── ctrl/ # Docker & deployment
│ ├── docker-compose.yml
│ └── nginx.conf
├── media/
│ ├── in/ # Source media files
│ └── out/ # Transcoded output
├── rpc/ # gRPC server & client
│ └── protos/ # Protobuf definitions (generated)
├── mpr/ # Django project
│ └── media_assets/ # Django app
├── schema/ # Source of truth
│ └── models/ # Dataclass definitions
├── task/ # Celery job execution
│ ├── executor.py # Executor abstraction
│ └── tasks.py # Celery tasks
├── modelgen/ # Code generation tool
└── ui/ # Frontend
└── timeline/ # React app
```