FastAPI is a modern, fast (high-performance), web framework for building APIs with Python 3.6+ based on standard Python type hints.
It plays well with other Python libraries as requests, multipart, ujson, pyyaml, and others.
FastAPI comes with a built-in document generator thanks to Swagger UI, and another alternative API docs tool that is provided by ReDoc.
- Fast: Very high performance, on par with NodeJS and Go (thanks to Starlette and Pydantic). One of the fastest Python frameworks available.
- Fast to code: Increase the speed to develop features by about 200% to 300%. *
- Fewer bugs: Reduce about 40% of human (developer) induced errors. *
- 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. Fewer bugs.
- Robust: Get production-ready code. With automatic interactive documentation.
- Standards-based: Based on (and fully compatible with) the open standards for APIs: OpenAPI (previously known as Swagger UI) and JSON Schema.
- Security and authentication, including support for OAuth2 with JWT tokens and HTTP Basic auth.
- A very powerful and easy to use Dependency Injection system.
- Extends to WebSockets
- GraphQL's integration
- Cookie Sessions managers
FastAPI is an open-source project that is released under the MIT License.