Technology Selection
This template streamlines building APIs with FastAPI and dynamic frontends with Next.js. It integrates the backend and frontend using @hey-api/openapi-ts to generate a type-safe client, with automated watchers to keep the OpenAPI schema and client updated, ensuring a smooth and synchronized development workflow.
- Next.js: Fast, SEO-friendly frontend framework
- FastAPI: High-performance Python backend
- SQLAlchemy: Powerful Python SQL toolkit and ORM
- PostgreSQL: Advanced open-source relational database
- Pydantic: Data validation and settings management using Python type annotations
- Zod + TypeScript: End-to-end type safety and schema validation
- fastapi-users: Complete authentication system with:
- Secure password hashing by default
- JWT (JSON Web Token) authentication
- Email-based password recovery
- Shadcn/ui: Beautiful and customizable React components
- OpenAPI-fetch: Fully typed client generation from OpenAPI schema
- fastapi-mail: Efficient email handling for FastAPI applications
- uv: An extremely fast Python package and project manager
- Pytest: Powerful Python testing framework
- Code Quality Tools:
- Hot reload watchers:
- Docker and Docker Compose: Consistent environments for development and production
- MailHog: Email server for development
- Pre-commit hooks: Enforce code quality with automated checks
- OpenAPI JSON schema: Centralized API documentation and client generation
With this setup, you'll save time and maintain a seamless connection between your backend and frontend, boosting productivity and reliability.