FastAPI
Developer(s) | Sebastián Ramírez |
---|---|
Initial release | December 5, 2018; 5 years ago (2018-12-05)[1] |
Stable release | |
Repository | github |
Written in | Python |
Type | Web framework |
License | MIT |
Website | fastapi |
FastAPI is a modern web framework first released in 2018 for building RESTful APIs in Python.[3] It is used for building APIs with Python 3.8+ based on standard Python-type hints.
FastAPI is based on Pydantic and uses type hints to validate, serialize and deserialize data. It also automatically generates OpenAPI documentation for APIs built with it.[4]
Components
Pydantic
Pydantic is a data validation library for Python. While writing code in an IDE, Pydantic provides type hints for schema validation and serialization through type annotations.[5]
Starlette
Starlette is a lightweight ASGI framework/toolkit, to support async functionality in Python.[6]
Uvicorn
Uvicorn is a minimal low-level server/application web server for async frameworks, following the ASGI specification.
Example
The following code shows a simple web application that displays "Hello World!" when visited:
from fastapi import FastAPI app = FastAPI() @app.get("/") def read_root(): return "Hello World!"
See also
- Django
- Flask
- Pylons project
- Web2py
- Tornado
- Comparison of server-side web frameworks
- REST
- Python (programming language)
External links
- Official website
- fastapi on GitHub
References
- ^ "fastapi repo". GitHub. 2018-12-05.
- ^ "Release 0.111.0". 3 May 2024. Retrieved 23 May 2024.
- ^ "FastAPI". fastapi.tiangolo.com. Retrieved 2024-04-10.
- ^ Lubanovic, Bill (2019-11-06). Introducing Python: Modern Computing in Simple Packages (2nd ed.). O'Reilly Media, Inc. pp. 397, 418. ISBN 9781492051367.
- ^ "Why use Pydantic - Pydantic". docs.pydantic.dev. Retrieved 2023-09-21.
- ^ "Starlette". www.starlette.io. Retrieved 2023-09-21.