{!../../../docs/missing-translation.md!}
FastAPI framework, high performance, easy to learn, fast to code, ready for production
--- **Documentation**: https://fastapi.tiangolo.com **Source Code**: https://github.com/tiangolo/fastapi --- FastAPI is a modern, fast (high-performance), web framework for building APIs with Python 3.6+ based on standard Python type hints. The key features are: * **Fast**: Very high performance, on par with **NodeJS** and **Go** (thanks to Starlette and Pydantic). [One of the fastest Python frameworks available](#performance). * **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) and JSON Schema. * estimation based on tests on an internal development team, building production applications. ## Sponsors {% if sponsors %} {% for sponsor in sponsors.gold -%}async def
...uvicorn main:app --reload
...ujson
- for faster JSON "parsing".
* email_validator
- for email validation.
Used by Starlette:
* requests
- Required if you want to use the `TestClient`.
* aiofiles
- Required if you want to use `FileResponse` or `StaticFiles`.
* jinja2
- Required if you want to use the default template configuration.
* python-multipart
- Required if you want to support form "parsing", with `request.form()`.
* itsdangerous
- Required for `SessionMiddleware` support.
* pyyaml
- Required for Starlette's `SchemaGenerator` support (you probably don't need it with FastAPI).
* graphene
- Required for `GraphQLApp` support.
* ujson
- Required if you want to use `UJSONResponse`.
Used by FastAPI / Starlette:
* uvicorn
- for the server that loads and serves your application.
* orjson
- Required if you want to use `ORJSONResponse`.
You can install all of these with `pip install fastapi[all]`.
## License
This project is licensed under the terms of the MIT license.