Repository structure
An outline of the repository structure is given below:
ska-src-maltopuft-backend/
├─ docs/
├─ src/
│ ├─ api/
│ │ ├─ v1/
│ ├─ app/
│ │ ├─ models/
│ │ ├─ schemas/
│ │ │ ├─ requests/
│ │ │ ├─ responses/
│ ├─ core/
│ │ ├─ config.py
│ │ ├─ database.py
│ │ ├─ server.py
├─ tests/
├─ main.py
Note
The directory structure is subject to change during early prototyping.
docs: Developer documentation pages.
- src.ska_src_maltopuft_backend: Application code.
api: Defines versioned API “routers” which are the paths of REST endpoints exposed by the application.
- app: Application-specific logic.
models: SQLAlchemy models.
schemas: Schemas for application requests and responses.
- core: Generic application configuration and boilerplate code. For example modules that establish database connections, enforce Role-Based Access Control (RBAC) and define any base classes re-used by several application components will all be defined here.
config: Application configuration.
database: Database connection.
server: Creates a FastAPI application.
tests: Unit and integration tests.