This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
TaskCraft is a Python FastAPI backend with a SolidJS + TypeScript frontend. Uses uv for Python package management and npm for frontend. Docker Compose for development.
Backend:
uv run uvicorn app.main:app --reloadFrontend:
cd frontend
npm run devImportant: Set environment variables via .env.dev file (gitignored). Copy from .env.example and fill in your values.
# Start all services (app + PostgreSQL)
docker compose -f docker-compose.dev.yml --env-file .env.dev up
# Stop services
docker compose -f docker-compose.dev.yml --env-file .env.dev down# Create migration
docker compose -f docker-compose.dev.yml --env-file .env.dev exec app uv run alembic revision --autogenerate -m "description"
# Apply migrations
docker compose -f docker-compose.dev.yml --env-file .env.dev exec app uv run alembic upgrade head
# Direct database access (use credentials from your .env.dev)
docker compose -f docker-compose.dev.yml --env-file .env.dev exec db psql -U ${POSTGRES_USER} -d ${POSTGRES_DB}- Backend: FastAPI app in
app/with entry point atapp/main.py - Frontend: SolidJS + TypeScript app in
frontend/src/, built with Vite - Database: PostgreSQL 18, migrations via Alembic
- Nginx: Reverse proxy config in
config/nginx.conf- routes/apito backend, serves static files fromfrontend/
- Python 3.10+ with FastAPI
- uv for Python dependency management
- SolidJS with Solid Router for frontend
- TypeScript for type safety
- Vite for frontend build tool
- PostgreSQL 18
- Docker/Docker Compose
- Nginx for production serving