mirror of https://github.com/tiangolo/fastapi.git
29 lines
2.0 KiB
Markdown
29 lines
2.0 KiB
Markdown
# Full Stack FastAPI Template { #full-stack-fastapi-template }
|
|
|
|
Templates, while typically come with a specific setup, are designed to be flexible and customizable. This allows you to modify and adapt them to your project's requirements, making them an excellent starting point. 🏁
|
|
|
|
You can use this template to get started, as it includes a lot of the initial set up, security, database and some API endpoints already done for you.
|
|
|
|
GitHub Repository: <a href="https://github.com/tiangolo/full-stack-fastapi-template" class="external-link" target="_blank">Full Stack FastAPI Template</a>
|
|
|
|
## Full Stack FastAPI Template - Technology Stack and Features { #full-stack-fastapi-template-technology-stack-and-features }
|
|
|
|
- ⚡ [**FastAPI**](https://fastapi.tiangolo.com) for the Python backend API.
|
|
- 🧰 [SQLModel](https://sqlmodel.tiangolo.com) for the Python SQL database interactions (ORM).
|
|
- 🔍 [Pydantic](https://docs.pydantic.dev), used by FastAPI, for the data validation and settings management.
|
|
- 💾 [PostgreSQL](https://www.postgresql.org) as the SQL database.
|
|
- 🚀 [React](https://react.dev) for the frontend.
|
|
- 💃 Using TypeScript, hooks, [Vite](https://vitejs.dev), and other parts of a modern frontend stack.
|
|
- 🎨 [Chakra UI](https://chakra-ui.com) for the frontend components.
|
|
- 🤖 An automatically generated frontend client.
|
|
- 🧪 [Playwright](https://playwright.dev) for End-to-End testing.
|
|
- 🦇 Dark mode support.
|
|
- 🐋 [Docker Compose](https://www.docker.com) for development and production.
|
|
- 🔒 Secure password hashing by default.
|
|
- 🔑 JWT token authentication.
|
|
- 📫 Email based password recovery.
|
|
- ✅ Tests with [Pytest](https://pytest.org).
|
|
- 📞 [Traefik](https://traefik.io) as a reverse proxy / load balancer.
|
|
- 🚢 Deployment instructions using Docker Compose, including how to set up a frontend Traefik proxy to handle automatic HTTPS certificates.
|
|
- 🏭 CI (continuous integration) and CD (continuous deployment) based on GitHub Actions.
|