Awesome
FastAPI-Full-Stack-Samples
The API Application Development using Python FastAPI, including interactive API documentation.
Features
- Full Docker integration (Docker based).
- Production ready Python web server using Uvicorn and Gunicorn.
- Python <a href="https://github.com/tiangolo/fastapi" class="external-link" target="_blank">FastAPI</a> backend:
- Fast: Very high performance, on par with NodeJS and Go (thanks to Starlette and Pydantic).
- Intuitive: Great editor support. <abbr title="also known as auto-complete, autocompletion, IntelliSense">Completion</abbr> everywhere. Less time debugging.
- Easy: Designed to be easy to use and learn. Less time reading docs.
- Short: Minimize code duplication. Multiple features from each parameter declaration.
- Robust: Get production-ready code. With automatic interactive documentation.
- Standards-based: Based on (and fully compatible with) the open standards for APIs: <a href="https://github.com/OAI/OpenAPI-Specification" class="external-link" target="_blank">OpenAPI</a> and <a href="http://json-schema.org/" class="external-link" target="_blank">JSON Schema</a>.
- <a href="https://fastapi.tiangolo.com/features/" class="external-link" target="_blank">Many other features</a> including automatic validation, serialization, interactive documentation, authentication with OAuth2 JWT tokens, etc.
- Secure password hashing by default.
- JWT token authentication.
- CORS (Cross Origin Resource Sharing).
- SQLAlchemy models (independent of Flask extensions, so they can be used with Celery/redis-rq workers directly).
- SQLModel models using SqlModel.
- MongoEngine MongoDB Document-Object Mapper
- GraphQL A query language for your API
- SocketIO Socket.IO enables real-time, bidirectional and event-based communication.