A full-stack, production-ready To-Do list application built with a modern monorepo architecture.
- Frontend: Next.js 14+ (App Router), TypeScript, Tailwind CSS
- Backend: FastAPI, Python 3.12, SQLModel (SQLAlchemy + Pydantic)
- Database: Neon Serverless PostgreSQL
- Auth: JWT (JSON Web Tokens) with secure password hashing
- Migrations: Alembic
- Tooling: Claude Code, Spec-Kit Plus
- Secure Authentication: User registration and login with JWT issuance.
- Task Management: Full CRUD (Create, Read, Update, Delete) operations.
- Ownership Protection: Users can only access and modify their own tasks.
- Task Categorization: Organize tasks by labels (Work, Personal, etc.).
- Type Safety: End-to-end type synchronization between backend models and frontend clients.
- Modern UI: Clean, responsive interface with real-time state updates.
- Python 3.12+
- Node.js 18+
- Neon DB Account (PostgreSQL)
Create a .env file in the root directory:
DATABASE_URL='your-neon-db-url'
JWT_SECRET='your-secret-key'
JWT_ALGORITHM='HS256'
NEXT_PUBLIC_API_URL='http://localhost:8000'cd backend
pip install -r requirements.txt # Or use uv sync
alembic upgrade head
uvicorn main:app --reloadcd frontend
npm install
npm run devbackend/: FastAPI application server and database models.frontend/: Next.js web application.specs/: Detailed technical specifications and implementation plans.history/: Prompt History Records (PHR) for development traceability..claude/: Custom AI skills (api-generator).
MIT