Quickstart¶
This page walks through generating, running and exercising a brand-new project end-to-end.
1. Generate the project¶
This produces a 31-file scaffold:
Text Only
my-project/
βββ docker-compose.yml
βββ Dockerfile.dev
βββ alembic.ini
βββ src/
β βββ domain/
β βββ application/
β βββ infrastructure/
β βββ presentation/
βββ migrations/
βββ tests/
βββ apogee.yml
2. Add a domain entity¶
This generates:
src/domain/customer/entity.pysrc/domain/customer/repository.py(port)src/application/customer/use_cases.pysrc/infrastructure/customer/orm.pysrc/infrastructure/customer/repository.pysrc/presentation/api/customer/router.py- migration file in
migrations/
3. Run the project¶
This starts:
| Service | Port | Purpose |
|---|---|---|
app |
8000 | FastAPI server |
postgres |
5432 | Relational DB |
Visit http://localhost:8000/docs for the auto-generated OpenAPI UI.
4. Exercise the API¶
Bash
curl -X POST http://localhost:8000/customers \
-H 'Content-Type: application/json' \
-d '{"name": "Ada Lovelace", "email": "ada@example.com"}'
curl http://localhost:8000/customers
5. Stop and clean up¶
Where to go next¶
- Want to add authentication? β see the
apogee-authmodule. - Want to add a chatbot or RAG? β see the
apogee-ai-ragmodule. - Want to scaffold a frontend? β see the
apogee-frontendmodule. - Want to understand the design? β Concepts.