/FastAPI-Full-Stack-Samples

The API Application Development using Python FastAPI, including interactive API documentation

Primary LanguagePythonMIT LicenseMIT

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 FastAPI backend:
    • Fast: Very high performance, on par with NodeJS and Go (thanks to Starlette and Pydantic).
    • Intuitive: Great editor support. Completion 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: OpenAPI and JSON Schema.
    • Many other features 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.