Go to file
Artem Kashaev 0727c4737b feat: add ActivityRepository and TaskRepository with CRUD operations for activities and tasks 2025-11-27 16:32:06 +05:00
.gitea/workflows fix: uncomment paths in test workflow for push and pull_request triggers 2025-11-27 14:48:58 +05:00
app feat: add ActivityRepository and TaskRepository with CRUD operations for activities and tasks 2025-11-27 16:32:06 +05:00
migrations feat: add migration to include 'stage_changed' activity type 2025-11-27 16:07:55 +05:00
tests feat: add JSONBCompat type for cross-database JSON support and implement ActivityType updates 2025-11-27 16:08:48 +05:00
.dockerignore feat: add Docker support and database migrations 2025-11-22 14:51:20 +05:00
.gitignore Initial commit 2025-11-22 07:35:06 +00:00
.python-version fix: update Python version to 3.14.0 2025-11-27 11:02:15 +05:00
LICENSE Initial commit 2025-11-22 07:35:06 +00:00
README.md Init project structure 2025-11-22 13:56:45 +05:00
alembic.ini fix: update database URL to use 0.0.0.0 and adjust Alembic migration configurations 2025-11-27 12:36:49 +05:00
docker-compose.yml feat: add Docker support and database migrations 2025-11-22 14:51:20 +05:00
pyproject.toml feat: add unit tests for organization endpoints and update dependencies 2025-11-27 15:04:35 +05:00
uv.lock feat: add unit tests for organization endpoints and update dependencies 2025-11-27 15:04:35 +05:00

README.md

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

  1. Create a .env file based on variables in app/core/config.py.
  2. Install dependencies:
    uv sync
    
  3. 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.