Implements complete FastAPI backend infrastructure for MoreThanADiagnosis with:
Core Infrastructure:
- FastAPI application with CORS, error handling, health checks
- SQLAlchemy ORM with PostgreSQL support
- Pydantic configuration management
- Docker & Docker Compose for production deployment
Database Models (7 MVPs + Auth):
- User, Profile, Role, Consent (identity)
- RefreshToken, AuthAuditLog (authentication)
- ForumCategory, ForumThread, ForumPost, ForumReaction, ForumReport (forum)
- BlogPost (blog)
- PodcastEpisode (podcast)
- Resource (resources)
- TributeEntry (tribute)
- MerchProduct, Order, OrderItem (merch)
API Endpoints (Alphabetical MVPs):
- /api/v1/blog - Blog posts (list, get)
- /api/v1/forum - Categories, threads, posts, reactions, reports
- /api/v1/merch - Products, orders
- /api/v1/podcast - Episodes
- /api/v1/profiles - User profiles
- /api/v1/resources - Knowledge base
- /api/v1/tribute - Memorials
- /api/v1/health - Health checks
Configuration & Deployment:
- .env.example for configuration
- Dockerfile with multi-stage build
- docker-compose.yml for PostgreSQL + Redis + API
- Production-ready on nexus-vector with port 8000
- Non-root user, health checks, security best practices
Dependencies:
- FastAPI, SQLAlchemy, Pydantic
- PostgreSQL, Redis
- Testing (pytest), Security (passlib, python-jose)
- Full requirements.txt with 30+ packages
Status: Foundation complete, MVP endpoint stubs ready
Next: Database migrations, authentication implementation
Job ID: MTAD-IMPL-2025-11-18-CL
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
66 lines
1.1 KiB
Text
66 lines
1.1 KiB
Text
# Core Framework
|
|
fastapi==0.104.1
|
|
uvicorn[standard]==0.24.0
|
|
pydantic==2.5.0
|
|
pydantic-settings==2.1.0
|
|
python-multipart==0.0.6
|
|
|
|
# Database
|
|
sqlalchemy==2.0.23
|
|
alembic==1.12.1
|
|
psycopg2-binary==2.9.9
|
|
psycopg[binary]==3.9.10
|
|
|
|
# Authentication & Security
|
|
passlib[bcrypt]==1.7.4
|
|
python-jose[cryptography]==3.3.0
|
|
PyJWT==2.8.1
|
|
bcrypt==4.1.1
|
|
cryptography==41.0.7
|
|
argon2-cffi==23.1.0
|
|
|
|
# API Documentation
|
|
python-dateutil==2.8.2
|
|
|
|
# Validation & Serialization
|
|
email-validator==2.1.0
|
|
|
|
# Environment Variables
|
|
python-dotenv==1.0.0
|
|
|
|
# Logging & Observability
|
|
python-json-logger==2.0.7
|
|
opentelemetry-api==1.21.0
|
|
opentelemetry-sdk==1.21.0
|
|
opentelemetry-exporter-jaeger==1.21.0
|
|
opentelemetry-instrumentation-fastapi==0.42b0
|
|
opentelemetry-instrumentation-sqlalchemy==0.42b0
|
|
|
|
# Data Validation & Transformation
|
|
marshmallow==3.20.1
|
|
|
|
# Testing
|
|
pytest==7.4.3
|
|
pytest-asyncio==0.21.1
|
|
pytest-cov==4.1.0
|
|
httpx==0.25.2
|
|
|
|
# Linting & Type Checking
|
|
ruff==0.1.8
|
|
mypy==1.7.1
|
|
types-python-dateutil==2.8.20
|
|
|
|
# Development
|
|
black==23.12.0
|
|
isort==5.13.2
|
|
pre-commit==3.5.0
|
|
|
|
# CORS & Middleware
|
|
fastapi-cors==0.0.6
|
|
|
|
# Rate Limiting
|
|
slowapi==0.1.9
|
|
|
|
# Background Tasks
|
|
celery==5.3.4
|
|
redis==5.0.1
|