a97a76381f6b68ff09a723bc4c34c2675ca66d24
- Created Dockerfile for building and running the application with Uvicorn. - Added docker-compose.yml to manage application and PostgreSQL service. - Introduced Alembic migrations with initial schema for CRM domain objects. - Configured async SQLAlchemy engine for migrations. - Updated dependencies in uv.lock to include asyncpg, passlib, and pyjwt.
Test Task CRM
FastAPI backend template that follows the architecture described in the system prompt: async SQLAlchemy ORM, Alembic-ready models, service/repository layers, JWT auth helpers, and Pydantic v2 schemas.
Quick start
- Create a
.envfile based on variables inapp/core/config.py. - Install dependencies:
uv sync - Run the development server:
uv run python main.py
Project layout
app/
api/ # FastAPI routers and dependencies
core/ # Settings, database, security helpers
models/ # SQLAlchemy models and Pydantic schemas
repositories/ # Data access layer (SQLAlchemy ORM usage)
services/ # Business logic (auth, users, etc.)
Add new routers under app/api/v1, repositories under app/repositories, and keep business rules inside app/services.
Description
Languages
Python
40.2%
JavaScript
30.4%
TypeScript
28.2%
CSS
0.6%
HTML
0.3%
Other
0.2%