diff --git a/README.md b/README.md index 0e421c347..95d123819 100644 --- a/README.md +++ b/README.md @@ -42,7 +42,7 @@ The key features are: * estimation based on tests on an internal development team, building production applications. -## Sponsors +## Sponsors { #sponsors } @@ -69,7 +69,7 @@ The key features are: Other sponsors -## Opinions +## Opinions { #opinions } "_[...] I'm using **FastAPI** a ton these days. [...] I'm actually planning to use it for all of my team's **ML services at Microsoft**. Some of them are getting integrated into the core **Windows** product and some **Office** products._" @@ -115,7 +115,7 @@ The key features are: --- -## **Typer**, the FastAPI of CLIs +## **Typer**, the FastAPI of CLIs { #typer-the-fastapi-of-clis } @@ -123,14 +123,14 @@ If you are building a CLI app to be **Typer** is FastAPI's little sibling. And it's intended to be the **FastAPI of CLIs**. ⌨️ 🚀 -## Requirements +## Requirements { #requirements } FastAPI stands on the shoulders of giants: * Starlette for the web parts. * Pydantic for the data parts. -## Installation +## Installation { #installation } Create and activate a virtual environment and then install FastAPI: @@ -146,9 +146,9 @@ $ pip install "fastapi[standard]" **Note**: Make sure you put `"fastapi[standard]"` in quotes to ensure it works in all terminals. -## Example +## Example { #example } -### Create it +### Create it { #create-it } Create a file `main.py` with: @@ -199,7 +199,7 @@ If you don't know, check the _"In a hurry?"_ section about -### Check it +### Check it { #check-it } Open your browser at http://127.0.0.1:8000/items/5?q=somequery. @@ -258,7 +258,7 @@ You already created an API that: * The _path_ `/items/{item_id}` has a _path parameter_ `item_id` that should be an `int`. * The _path_ `/items/{item_id}` has an optional `str` _query parameter_ `q`. -### Interactive API docs +### Interactive API docs { #interactive-api-docs } Now go to http://127.0.0.1:8000/docs. @@ -266,7 +266,7 @@ You will see the automatic interactive API documentation (provided by http://127.0.0.1:8000/redoc. @@ -274,7 +274,7 @@ You will see the alternative automatic documentation (provided by http://127.0.0.1:8000/docs. @@ -328,7 +328,7 @@ Now go to http://127.0.0.1:8000/redoc. @@ -336,7 +336,7 @@ And now, go to one of the fastest Python frameworks available, only below Starlette and Uvicorn themselves (used internally by FastAPI). (*) To understand more about it, see the section Benchmarks. -## Dependencies +## Dependencies { #dependencies } FastAPI depends on Pydantic and Starlette. -### `standard` Dependencies +### `standard` Dependencies { #standard-dependencies } When you install FastAPI with `pip install "fastapi[standard]"` it comes with the `standard` group of optional dependencies: @@ -478,15 +478,15 @@ Used by FastAPI: * `fastapi-cli[standard]` - to provide the `fastapi` command. * This includes `fastapi-cloud-cli`, which allows you to deploy your FastAPI application to FastAPI Cloud. -### Without `standard` Dependencies +### Without `standard` Dependencies { #without-standard-dependencies } If you don't want to include the `standard` optional dependencies, you can install with `pip install fastapi` instead of `pip install "fastapi[standard]"`. -### Without `fastapi-cloud-cli` +### Without `fastapi-cloud-cli` { #without-fastapi-cloud-cli } If you want to install FastAPI with the standard dependencies but without the `fastapi-cloud-cli`, you can install with `pip install "fastapi[standard-no-fastapi-cloud-cli]"`. -### Additional Optional Dependencies +### Additional Optional Dependencies { #additional-optional-dependencies } There are some additional dependencies you might want to install. @@ -500,6 +500,6 @@ Additional optional FastAPI dependencies: * orjson - Required if you want to use `ORJSONResponse`. * ujson - Required if you want to use `UJSONResponse`. -## License +## License { #license } This project is licensed under the terms of the MIT license.