diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 946d24f35..673c86127 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -14,7 +14,7 @@ repos:
- id: end-of-file-fixer
- id: trailing-whitespace
- repo: https://github.com/astral-sh/ruff-pre-commit
- rev: v0.12.0
+ rev: v0.12.1
hooks:
- id: ruff
args:
diff --git a/README.md b/README.md
index ab5143084..25a1d9179 100644
--- a/README.md
+++ b/README.md
@@ -470,15 +470,20 @@ Used by Starlette:
* jinja2
- Required if you want to use the default template configuration.
* python-multipart
- Required if you want to support form "parsing", with `request.form()`.
-Used by FastAPI / Starlette:
+Used by FastAPI:
* uvicorn
- for the server that loads and serves your application. This includes `uvicorn[standard]`, which includes some dependencies (e.g. `uvloop`) needed for high performance serving.
-* `fastapi-cli` - to provide the `fastapi` command.
+* `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
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`
+
+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
There are some additional dependencies you might want to install.
diff --git a/docs/en/data/github_sponsors.yml b/docs/en/data/github_sponsors.yml
index efc5cbfcc..0cb200185 100644
--- a/docs/en/data/github_sponsors.yml
+++ b/docs/en/data/github_sponsors.yml
@@ -1,10 +1,10 @@
sponsors:
+- - login: classmethod
+ avatarUrl: https://avatars.githubusercontent.com/u/1532151?v=4
+ url: https://github.com/classmethod
- - login: renderinc
avatarUrl: https://avatars.githubusercontent.com/u/36424661?v=4
url: https://github.com/renderinc
- - login: Nixtla
- avatarUrl: https://avatars.githubusercontent.com/u/79945230?v=4
- url: https://github.com/Nixtla
- login: andrew-propelauth
avatarUrl: https://avatars.githubusercontent.com/u/89474256?u=c98993dec8553c09d424ede67bbe86e5c35f48c9&v=4
url: https://github.com/andrew-propelauth
@@ -17,12 +17,15 @@ sponsors:
- login: coderabbitai
avatarUrl: https://avatars.githubusercontent.com/u/132028505?v=4
url: https://github.com/coderabbitai
+ - login: madisonredtfeldt
+ avatarUrl: https://avatars.githubusercontent.com/u/152656511?v=4
+ url: https://github.com/madisonredtfeldt
- login: subtotal
avatarUrl: https://avatars.githubusercontent.com/u/176449348?v=4
url: https://github.com/subtotal
- - login: porter-dev
- avatarUrl: https://avatars.githubusercontent.com/u/62078005?v=4
- url: https://github.com/porter-dev
+ - login: Nixtla
+ avatarUrl: https://avatars.githubusercontent.com/u/79945230?v=4
+ url: https://github.com/Nixtla
- login: scalar
avatarUrl: https://avatars.githubusercontent.com/u/301879?v=4
url: https://github.com/scalar
@@ -41,27 +44,27 @@ sponsors:
- login: speakeasy-api
avatarUrl: https://avatars.githubusercontent.com/u/91446104?v=4
url: https://github.com/speakeasy-api
- - login: snapit-cypher
- avatarUrl: https://avatars.githubusercontent.com/u/115662654?v=4
- url: https://github.com/snapit-cypher
- login: databento
avatarUrl: https://avatars.githubusercontent.com/u/64141749?v=4
url: https://github.com/databento
- login: permitio
avatarUrl: https://avatars.githubusercontent.com/u/71775833?v=4
url: https://github.com/permitio
-- - login: mercedes-benz
- avatarUrl: https://avatars.githubusercontent.com/u/34240465?v=4
- url: https://github.com/mercedes-benz
- - login: xoflare
+- - login: xoflare
avatarUrl: https://avatars.githubusercontent.com/u/74335107?v=4
url: https://github.com/xoflare
- login: marvin-robot
avatarUrl: https://avatars.githubusercontent.com/u/41086007?u=b9fcab402d0cd0aec738b6574fe60855cb0cd36d&v=4
url: https://github.com/marvin-robot
+ - login: mercedes-benz
+ avatarUrl: https://avatars.githubusercontent.com/u/34240465?v=4
+ url: https://github.com/mercedes-benz
- login: Ponte-Energy-Partners
avatarUrl: https://avatars.githubusercontent.com/u/114745848?v=4
url: https://github.com/Ponte-Energy-Partners
+ - login: snapit-cypher
+ avatarUrl: https://avatars.githubusercontent.com/u/115662654?v=4
+ url: https://github.com/snapit-cypher
- login: LambdaTest-Inc
avatarUrl: https://avatars.githubusercontent.com/u/171592363?u=96606606a45fa170427206199014f2a5a2a4920b&v=4
url: https://github.com/LambdaTest-Inc
@@ -98,15 +101,21 @@ sponsors:
- - login: samuelcolvin
avatarUrl: https://avatars.githubusercontent.com/u/4039449?u=42eb3b833047c8c4b4f647a031eaef148c16d93f&v=4
url: https://github.com/samuelcolvin
+ - login: CoodingPenguin
+ avatarUrl: https://avatars.githubusercontent.com/u/37505775?u=6a9e1f6647fbf95f99afeee82a3682e15fc6e959&v=4
+ url: https://github.com/CoodingPenguin
+ - login: deight93
+ avatarUrl: https://avatars.githubusercontent.com/u/37678115?u=a608798b5bd0034183a9c430ebb42fb266db86ce&v=4
+ url: https://github.com/deight93
- login: otosky
avatarUrl: https://avatars.githubusercontent.com/u/42260747?u=69d089387c743d89427aa4ad8740cfb34045a9e0&v=4
url: https://github.com/otosky
- login: ramonalmeidam
avatarUrl: https://avatars.githubusercontent.com/u/45269580?u=3358750b3a5854d7c3ed77aaca7dd20a0f529d32&v=4
url: https://github.com/ramonalmeidam
- - login: ashi-agrawal
- avatarUrl: https://avatars.githubusercontent.com/u/17105294?u=99c7a854035e5398d8e7b674f2d42baae6c957f8&v=4
- url: https://github.com/ashi-agrawal
+ - login: kaoru0310
+ avatarUrl: https://avatars.githubusercontent.com/u/80977929?u=1b61d10142b490e56af932ddf08a390fae8ee94f&v=4
+ url: https://github.com/kaoru0310
- login: RaamEEIL
avatarUrl: https://avatars.githubusercontent.com/u/20320552?v=4
url: https://github.com/RaamEEIL
@@ -125,9 +134,6 @@ sponsors:
- login: ProteinQure
avatarUrl: https://avatars.githubusercontent.com/u/33707203?v=4
url: https://github.com/ProteinQure
- - login: kaoru0310
- avatarUrl: https://avatars.githubusercontent.com/u/80977929?u=1b61d10142b490e56af932ddf08a390fae8ee94f&v=4
- url: https://github.com/kaoru0310
- login: DelfinaCare
avatarUrl: https://avatars.githubusercontent.com/u/83734439?v=4
url: https://github.com/DelfinaCare
@@ -191,9 +197,6 @@ sponsors:
- login: gorhack
avatarUrl: https://avatars.githubusercontent.com/u/4141690?u=ec119ebc4bdf00a7bc84657a71aa17834f4f27f3&v=4
url: https://github.com/gorhack
- - login: Ryandaydev
- avatarUrl: https://avatars.githubusercontent.com/u/4292423?u=679ff84cb7b988c5795a5fa583857f574a055763&v=4
- url: https://github.com/Ryandaydev
- login: vincentkoc
avatarUrl: https://avatars.githubusercontent.com/u/25068?u=fbd5b2d51142daa4bdbc21e21953a3b8b8188a4a&v=4
url: https://github.com/vincentkoc
@@ -227,15 +230,9 @@ sponsors:
- login: mintuhouse
avatarUrl: https://avatars.githubusercontent.com/u/769950?u=ecfbd79a97d33177e0d093ddb088283cf7fe8444&v=4
url: https://github.com/mintuhouse
- - login: TrevorBenson
- avatarUrl: https://avatars.githubusercontent.com/u/9167887?u=dccbea3327a57750923333d8ebf1a0b3f1948949&v=4
- url: https://github.com/TrevorBenson
- login: wdwinslow
- avatarUrl: https://avatars.githubusercontent.com/u/11562137?u=dc01daafb354135603a263729e3d26d939c0c452&v=4
+ avatarUrl: https://avatars.githubusercontent.com/u/11562137?u=371272f2c69e680e0559a7b0a57385e83a5dc728&v=4
url: https://github.com/wdwinslow
- - login: catherinenelson1
- avatarUrl: https://avatars.githubusercontent.com/u/11951946?u=fe11bc35d36b6038cd46a946e4e46ef8aa5688ab&v=4
- url: https://github.com/catherinenelson1
- login: jsoques
avatarUrl: https://avatars.githubusercontent.com/u/12414216?u=620921d94196546cc8b9eae2cc4cbc3f95bab42f&v=4
url: https://github.com/jsoques
@@ -251,6 +248,12 @@ sponsors:
- login: mjohnsey
avatarUrl: https://avatars.githubusercontent.com/u/16784016?u=38fad2e6b411244560b3af99c5f5a4751bc81865&v=4
url: https://github.com/mjohnsey
+ - login: ashi-agrawal
+ avatarUrl: https://avatars.githubusercontent.com/u/17105294?u=99c7a854035e5398d8e7b674f2d42baae6c957f8&v=4
+ url: https://github.com/ashi-agrawal
+ - login: Ryandaydev
+ avatarUrl: https://avatars.githubusercontent.com/u/4292423?u=679ff84cb7b988c5795a5fa583857f574a055763&v=4
+ url: https://github.com/Ryandaydev
- login: jaredtrog
avatarUrl: https://avatars.githubusercontent.com/u/4381365?v=4
url: https://github.com/jaredtrog
@@ -278,9 +281,6 @@ sponsors:
- - login: pawamoy
avatarUrl: https://avatars.githubusercontent.com/u/3999221?u=b030e4c89df2f3a36bc4710b925bdeb6745c9856&v=4
url: https://github.com/pawamoy
- - login: bnkc
- avatarUrl: https://avatars.githubusercontent.com/u/34930566?u=db5e6f4f87836cad26c2aa90ce390ce49041c5a9&v=4
- url: https://github.com/bnkc
- login: petercool
avatarUrl: https://avatars.githubusercontent.com/u/37613029?u=81c525232bb35780945a68e88afd96bb2cdad9c4&v=4
url: https://github.com/petercool
@@ -296,12 +296,6 @@ sponsors:
- login: caviri
avatarUrl: https://avatars.githubusercontent.com/u/45425937?u=4e14bd64282bad8f385eafbdb004b5a279366d6e&v=4
url: https://github.com/caviri
- - login: hgalytoby
- avatarUrl: https://avatars.githubusercontent.com/u/50397689?u=62c7ff3519858423579676cd0efbd7e3f1ffe63a&v=4
- url: https://github.com/hgalytoby
- - login: browniebroke
- avatarUrl: https://avatars.githubusercontent.com/u/861044?u=5abfca5588f3e906b31583d7ee62f6de4b68aa24&v=4
- url: https://github.com/browniebroke
- login: joshuatz
avatarUrl: https://avatars.githubusercontent.com/u/17817563?u=f1bf05b690d1fc164218f0b420cdd3acb7913e21&v=4
url: https://github.com/joshuatz
@@ -323,21 +317,24 @@ sponsors:
- login: engineerjoe440
avatarUrl: https://avatars.githubusercontent.com/u/33275230?u=eb223cad27017bb1e936ee9b429b450d092d0236&v=4
url: https://github.com/engineerjoe440
+ - login: bnkc
+ avatarUrl: https://avatars.githubusercontent.com/u/34930566?u=db5e6f4f87836cad26c2aa90ce390ce49041c5a9&v=4
+ url: https://github.com/bnkc
- login: lukzmu
- avatarUrl: https://avatars.githubusercontent.com/u/175964415?u=83ea9b0b7b7b0f15bcb5747d93f303447a19a00b&v=4
+ avatarUrl: https://avatars.githubusercontent.com/u/175964415?u=75348f25bb99a5f92ddb40c0b9b1ff7acb39c150&v=4
url: https://github.com/lukzmu
- - login: conservative-dude
- avatarUrl: https://avatars.githubusercontent.com/u/55538308?u=f250c44942ea6e73a6bd90739b381c470c192c11&v=4
- url: https://github.com/conservative-dude
- - login: CR1337
- avatarUrl: https://avatars.githubusercontent.com/u/62649536?u=57a6aab10d2421a497306da8bcded01b826c54ae&v=4
- url: https://github.com/CR1337
+ - login: hgalytoby
+ avatarUrl: https://avatars.githubusercontent.com/u/50397689?u=62c7ff3519858423579676cd0efbd7e3f1ffe63a&v=4
+ url: https://github.com/hgalytoby
- login: PunRabbit
avatarUrl: https://avatars.githubusercontent.com/u/70463212?u=1a835cfbc99295a60c8282f6aa6199d1b42241a5&v=4
url: https://github.com/PunRabbit
- login: PelicanQ
avatarUrl: https://avatars.githubusercontent.com/u/77930606?v=4
url: https://github.com/PelicanQ
+ - login: browniebroke
+ avatarUrl: https://avatars.githubusercontent.com/u/861044?u=5abfca5588f3e906b31583d7ee62f6de4b68aa24&v=4
+ url: https://github.com/browniebroke
- login: miguelgr
avatarUrl: https://avatars.githubusercontent.com/u/1484589?u=54556072b8136efa12ae3b6902032ea2a39ace4b&v=4
url: https://github.com/miguelgr
@@ -347,9 +344,6 @@ sponsors:
- login: my3
avatarUrl: https://avatars.githubusercontent.com/u/1825270?v=4
url: https://github.com/my3
- - login: leobiscassi
- avatarUrl: https://avatars.githubusercontent.com/u/1977418?u=f9f82445a847ab479bd7223debd677fcac6c49a0&v=4
- url: https://github.com/leobiscassi
- login: Alisa-lisa
avatarUrl: https://avatars.githubusercontent.com/u/4137964?u=e7e393504f554f4ff15863a1e01a5746863ef9ce&v=4
url: https://github.com/Alisa-lisa
@@ -425,9 +419,6 @@ sponsors:
- login: harsh183
avatarUrl: https://avatars.githubusercontent.com/u/7780198?v=4
url: https://github.com/harsh183
- - login: hcristea
- avatarUrl: https://avatars.githubusercontent.com/u/7814406?u=19092923a4ea5b338567961c8270b9206a6d81bb&v=4
- url: https://github.com/hcristea
- - login: andrecorumba
avatarUrl: https://avatars.githubusercontent.com/u/37807517?u=9b9be3b41da9bda60957da9ef37b50dbf65baa61&v=4
url: https://github.com/andrecorumba
@@ -446,15 +437,21 @@ sponsors:
- login: larsyngvelundin
avatarUrl: https://avatars.githubusercontent.com/u/34173819?u=74958599695bf83ac9f1addd935a51548a10c6b0&v=4
url: https://github.com/larsyngvelundin
- - login: one-st-one
+ - login: 0ne-stone
avatarUrl: https://avatars.githubusercontent.com/u/62360849?u=746dd21c34e7e06eefb11b03e8bb01aaae3c2a4f&v=4
- url: https://github.com/one-st-one
- - login: federicsp
- avatarUrl: https://avatars.githubusercontent.com/u/62903636?u=05004f4a2c590f1d18c200e17978bf2e17acb632&v=4
- url: https://github.com/federicsp
+ url: https://github.com/0ne-stone
+ - login: darixsamani
+ avatarUrl: https://avatars.githubusercontent.com/u/67915678?u=cfa82128692eeeec4bf0e7a0faaa9a614695c0f9&v=4
+ url: https://github.com/darixsamani
+ - login: nayasinghania
+ avatarUrl: https://avatars.githubusercontent.com/u/74111380?u=af853245a21fe052b6a27e41a8de8cf4cdf76e85&v=4
+ url: https://github.com/nayasinghania
- login: Toothwitch
avatarUrl: https://avatars.githubusercontent.com/u/1710406?u=5eebb23b46cd26e48643b9e5179536cad491c17a&v=4
url: https://github.com/Toothwitch
+ - login: roboman-tech
+ avatarUrl: https://avatars.githubusercontent.com/u/8183070?u=fdeaa2ed29f598eb7901693884c0ad32b16982e3&v=4
+ url: https://github.com/roboman-tech
- login: andreagrandi
avatarUrl: https://avatars.githubusercontent.com/u/636391?u=13d90cb8ec313593a5b71fbd4e33b78d6da736f5&v=4
url: https://github.com/andreagrandi
diff --git a/docs/en/data/topic_repos.yml b/docs/en/data/topic_repos.yml
index 1f6ae55bd..ab9f21995 100644
--- a/docs/en/data/topic_repos.yml
+++ b/docs/en/data/topic_repos.yml
@@ -1,495 +1,495 @@
- name: full-stack-fastapi-template
html_url: https://github.com/fastapi/full-stack-fastapi-template
- stars: 33079
+ stars: 34156
owner_login: fastapi
owner_html_url: https://github.com/fastapi
- name: Hello-Python
html_url: https://github.com/mouredev/Hello-Python
- stars: 30350
+ stars: 30835
owner_login: mouredev
owner_html_url: https://github.com/mouredev
- name: serve
html_url: https://github.com/jina-ai/serve
- stars: 21593
+ stars: 21631
owner_login: jina-ai
owner_html_url: https://github.com/jina-ai
- name: HivisionIDPhotos
html_url: https://github.com/Zeyi-Lin/HivisionIDPhotos
- stars: 17229
+ stars: 18125
owner_login: Zeyi-Lin
owner_html_url: https://github.com/Zeyi-Lin
- name: sqlmodel
html_url: https://github.com/fastapi/sqlmodel
- stars: 16068
+ stars: 16249
owner_login: fastapi
owner_html_url: https://github.com/fastapi
- name: Douyin_TikTok_Download_API
html_url: https://github.com/Evil0ctal/Douyin_TikTok_Download_API
- stars: 12689
+ stars: 13279
owner_login: Evil0ctal
owner_html_url: https://github.com/Evil0ctal
- name: fastapi-best-practices
html_url: https://github.com/zhanymkanov/fastapi-best-practices
- stars: 11965
+ stars: 12334
owner_login: zhanymkanov
owner_html_url: https://github.com/zhanymkanov
- name: awesome-fastapi
html_url: https://github.com/mjhea0/awesome-fastapi
- stars: 9773
+ stars: 9934
owner_login: mjhea0
owner_html_url: https://github.com/mjhea0
- name: FastUI
html_url: https://github.com/pydantic/FastUI
- stars: 8829
+ stars: 8838
owner_login: pydantic
owner_html_url: https://github.com/pydantic
+- name: XHS-Downloader
+ html_url: https://github.com/JoeanAmier/XHS-Downloader
+ stars: 7962
+ owner_login: JoeanAmier
+ owner_html_url: https://github.com/JoeanAmier
- name: nonebot2
html_url: https://github.com/nonebot/nonebot2
- stars: 6779
+ stars: 6834
owner_login: nonebot
owner_html_url: https://github.com/nonebot
- name: FileCodeBox
html_url: https://github.com/vastsa/FileCodeBox
- stars: 6652
+ stars: 6783
owner_login: vastsa
owner_html_url: https://github.com/vastsa
-- name: serge
- html_url: https://github.com/serge-chat/serge
- stars: 5722
- owner_login: serge-chat
- owner_html_url: https://github.com/serge-chat
+- name: fastapi_mcp
+ html_url: https://github.com/tadata-org/fastapi_mcp
+ stars: 5846
+ owner_login: tadata-org
+ owner_html_url: https://github.com/tadata-org
- name: hatchet
html_url: https://github.com/hatchet-dev/hatchet
- stars: 5607
+ stars: 5773
owner_login: hatchet-dev
owner_html_url: https://github.com/hatchet-dev
+- name: serge
+ html_url: https://github.com/serge-chat/serge
+ stars: 5728
+ owner_login: serge-chat
+ owner_html_url: https://github.com/serge-chat
- name: polar
html_url: https://github.com/polarsource/polar
- stars: 5327
+ stars: 5709
owner_login: polarsource
owner_html_url: https://github.com/polarsource
- name: fastapi-users
html_url: https://github.com/fastapi-users/fastapi-users
- stars: 5235
+ stars: 5336
owner_login: fastapi-users
owner_html_url: https://github.com/fastapi-users
-- name: fastapi_mcp
- html_url: https://github.com/tadata-org/fastapi_mcp
- stars: 5193
- owner_login: tadata-org
- owner_html_url: https://github.com/tadata-org
-- name: SurfSense
- html_url: https://github.com/MODSetter/SurfSense
- stars: 4833
- owner_login: MODSetter
- owner_html_url: https://github.com/MODSetter
-- name: chatgpt-web-share
- html_url: https://github.com/chatpire/chatgpt-web-share
- stars: 4307
- owner_login: chatpire
- owner_html_url: https://github.com/chatpire
- name: strawberry
html_url: https://github.com/strawberry-graphql/strawberry
- stars: 4281
+ stars: 4317
owner_login: strawberry-graphql
owner_html_url: https://github.com/strawberry-graphql
+- name: chatgpt-web-share
+ html_url: https://github.com/chatpire/chatgpt-web-share
+ stars: 4301
+ owner_login: chatpire
+ owner_html_url: https://github.com/chatpire
- name: atrilabs-engine
html_url: https://github.com/Atri-Labs/atrilabs-engine
- stars: 4110
+ stars: 4106
owner_login: Atri-Labs
owner_html_url: https://github.com/Atri-Labs
- name: dynaconf
html_url: https://github.com/dynaconf/dynaconf
- stars: 4008
+ stars: 4045
owner_login: dynaconf
owner_html_url: https://github.com/dynaconf
- name: poem
html_url: https://github.com/poem-web/poem
- stars: 3977
+ stars: 4037
owner_login: poem-web
owner_html_url: https://github.com/poem-web
- name: farfalle
html_url: https://github.com/rashadphz/farfalle
- stars: 3317
+ stars: 3348
owner_login: rashadphz
owner_html_url: https://github.com/rashadphz
+- name: LitServe
+ html_url: https://github.com/Lightning-AI/LitServe
+ stars: 3347
+ owner_login: Lightning-AI
+ owner_html_url: https://github.com/Lightning-AI
- name: fastapi-admin
html_url: https://github.com/fastapi-admin/fastapi-admin
- stars: 3253
+ stars: 3309
owner_login: fastapi-admin
owner_html_url: https://github.com/fastapi-admin
- name: datamodel-code-generator
html_url: https://github.com/koxudaxi/datamodel-code-generator
- stars: 3228
+ stars: 3291
owner_login: koxudaxi
owner_html_url: https://github.com/koxudaxi
-- name: LitServe
- html_url: https://github.com/Lightning-AI/LitServe
- stars: 3175
- owner_login: Lightning-AI
- owner_html_url: https://github.com/Lightning-AI
- name: logfire
html_url: https://github.com/pydantic/logfire
- stars: 3172
+ stars: 3288
owner_login: pydantic
owner_html_url: https://github.com/pydantic
-- name: opyrator
- html_url: https://github.com/ml-tooling/opyrator
- stars: 3122
- owner_login: ml-tooling
- owner_html_url: https://github.com/ml-tooling
- name: huma
html_url: https://github.com/danielgtaylor/huma
- stars: 3110
+ stars: 3201
owner_login: danielgtaylor
owner_html_url: https://github.com/danielgtaylor
+- name: opyrator
+ html_url: https://github.com/ml-tooling/opyrator
+ stars: 3132
+ owner_login: ml-tooling
+ owner_html_url: https://github.com/ml-tooling
+- name: Kokoro-FastAPI
+ html_url: https://github.com/remsky/Kokoro-FastAPI
+ stars: 3099
+ owner_login: remsky
+ owner_html_url: https://github.com/remsky
- name: docarray
html_url: https://github.com/docarray/docarray
- stars: 3068
+ stars: 3075
owner_login: docarray
owner_html_url: https://github.com/docarray
- name: fastapi-realworld-example-app
html_url: https://github.com/nsidnev/fastapi-realworld-example-app
- stars: 2892
+ stars: 2902
owner_login: nsidnev
owner_html_url: https://github.com/nsidnev
-- name: Kokoro-FastAPI
- html_url: https://github.com/remsky/Kokoro-FastAPI
- stars: 2883
- owner_login: remsky
- owner_html_url: https://github.com/remsky
-- name: uvicorn-gunicorn-fastapi-docker
- html_url: https://github.com/tiangolo/uvicorn-gunicorn-fastapi-docker
- stars: 2770
- owner_login: tiangolo
- owner_html_url: https://github.com/tiangolo
- name: tracecat
html_url: https://github.com/TracecatHQ/tracecat
- stars: 2740
+ stars: 2888
owner_login: TracecatHQ
owner_html_url: https://github.com/TracecatHQ
+- name: uvicorn-gunicorn-fastapi-docker
+ html_url: https://github.com/tiangolo/uvicorn-gunicorn-fastapi-docker
+ stars: 2775
+ owner_login: tiangolo
+ owner_html_url: https://github.com/tiangolo
- name: best-of-web-python
html_url: https://github.com/ml-tooling/best-of-web-python
- stars: 2517
+ stars: 2537
owner_login: ml-tooling
owner_html_url: https://github.com/ml-tooling
- name: RasaGPT
html_url: https://github.com/paulpierre/RasaGPT
- stars: 2423
+ stars: 2427
owner_login: paulpierre
owner_html_url: https://github.com/paulpierre
- name: fastapi-react
html_url: https://github.com/Buuntu/fastapi-react
- stars: 2376
+ stars: 2397
owner_login: Buuntu
owner_html_url: https://github.com/Buuntu
- name: FastAPI-template
html_url: https://github.com/s3rius/FastAPI-template
- stars: 2301
+ stars: 2334
owner_login: s3rius
owner_html_url: https://github.com/s3rius
- name: nextpy
html_url: https://github.com/dot-agent/nextpy
- stars: 2289
+ stars: 2295
owner_login: dot-agent
owner_html_url: https://github.com/dot-agent
- name: sqladmin
html_url: https://github.com/aminalaee/sqladmin
- stars: 2196
+ stars: 2235
owner_login: aminalaee
owner_html_url: https://github.com/aminalaee
- name: 30-Days-of-Python
html_url: https://github.com/codingforentrepreneurs/30-Days-of-Python
- stars: 2179
+ stars: 2181
owner_login: codingforentrepreneurs
owner_html_url: https://github.com/codingforentrepreneurs
- name: langserve
html_url: https://github.com/langchain-ai/langserve
- stars: 2098
+ stars: 2119
owner_login: langchain-ai
owner_html_url: https://github.com/langchain-ai
- name: fastapi-utils
html_url: https://github.com/fastapiutils/fastapi-utils
- stars: 2077
+ stars: 2100
owner_login: fastapiutils
owner_html_url: https://github.com/fastapiutils
- name: supabase-py
html_url: https://github.com/supabase/supabase-py
- stars: 2047
+ stars: 2084
owner_login: supabase
owner_html_url: https://github.com/supabase
- name: solara
html_url: https://github.com/widgetti/solara
- stars: 2044
+ stars: 2056
owner_login: widgetti
owner_html_url: https://github.com/widgetti
- name: mangum
html_url: https://github.com/Kludex/mangum
- stars: 1905
+ stars: 1923
owner_login: Kludex
owner_html_url: https://github.com/Kludex
- name: python-week-2022
html_url: https://github.com/rochacbruno/python-week-2022
- stars: 1823
+ stars: 1821
owner_login: rochacbruno
owner_html_url: https://github.com/rochacbruno
-- name: manage-fastapi
- html_url: https://github.com/ycd/manage-fastapi
- stars: 1754
- owner_login: ycd
- owner_html_url: https://github.com/ycd
- name: agentkit
html_url: https://github.com/BCG-X-Official/agentkit
- stars: 1746
+ stars: 1765
owner_login: BCG-X-Official
owner_html_url: https://github.com/BCG-X-Official
+- name: manage-fastapi
+ html_url: https://github.com/ycd/manage-fastapi
+ stars: 1756
+ owner_login: ycd
+ owner_html_url: https://github.com/ycd
- name: ormar
html_url: https://github.com/collerek/ormar
- stars: 1742
+ stars: 1755
owner_login: collerek
owner_html_url: https://github.com/collerek
- name: langchain-serve
html_url: https://github.com/jina-ai/langchain-serve
- stars: 1630
+ stars: 1631
owner_login: jina-ai
owner_html_url: https://github.com/jina-ai
-- name: termpair
- html_url: https://github.com/cs01/termpair
- stars: 1611
- owner_login: cs01
- owner_html_url: https://github.com/cs01
- name: piccolo
html_url: https://github.com/piccolo-orm/piccolo
- stars: 1609
+ stars: 1629
owner_login: piccolo-orm
owner_html_url: https://github.com/piccolo-orm
-- name: coronavirus-tracker-api
- html_url: https://github.com/ExpDev07/coronavirus-tracker-api
- stars: 1587
- owner_login: ExpDev07
- owner_html_url: https://github.com/ExpDev07
-- name: fastapi-cache
- html_url: https://github.com/long2ice/fastapi-cache
- stars: 1575
- owner_login: long2ice
- owner_html_url: https://github.com/long2ice
+- name: termpair
+ html_url: https://github.com/cs01/termpair
+ stars: 1616
+ owner_login: cs01
+ owner_html_url: https://github.com/cs01
- name: openapi-python-client
html_url: https://github.com/openapi-generators/openapi-python-client
- stars: 1568
+ stars: 1603
owner_login: openapi-generators
owner_html_url: https://github.com/openapi-generators
-- name: fastapi-crudrouter
- html_url: https://github.com/awtkns/fastapi-crudrouter
- stars: 1508
- owner_login: awtkns
- owner_html_url: https://github.com/awtkns
+- name: fastapi-cache
+ html_url: https://github.com/long2ice/fastapi-cache
+ stars: 1589
+ owner_login: long2ice
+ owner_html_url: https://github.com/long2ice
+- name: coronavirus-tracker-api
+ html_url: https://github.com/ExpDev07/coronavirus-tracker-api
+ stars: 1580
+ owner_login: ExpDev07
+ owner_html_url: https://github.com/ExpDev07
- name: slowapi
html_url: https://github.com/laurentS/slowapi
- stars: 1501
+ stars: 1533
owner_login: laurentS
owner_html_url: https://github.com/laurentS
+- name: fastapi-crudrouter
+ html_url: https://github.com/awtkns/fastapi-crudrouter
+ stars: 1518
+ owner_login: awtkns
+ owner_html_url: https://github.com/awtkns
- name: awesome-fastapi-projects
html_url: https://github.com/Kludex/awesome-fastapi-projects
- stars: 1453
+ stars: 1461
owner_login: Kludex
owner_html_url: https://github.com/Kludex
+- name: vue-fastapi-admin
+ html_url: https://github.com/mizhexiaoxiao/vue-fastapi-admin
+ stars: 1409
+ owner_login: mizhexiaoxiao
+ owner_html_url: https://github.com/mizhexiaoxiao
- name: awesome-python-resources
html_url: https://github.com/DjangoEx/awesome-python-resources
- stars: 1390
+ stars: 1393
owner_login: DjangoEx
owner_html_url: https://github.com/DjangoEx
- name: fastapi-pagination
html_url: https://github.com/uriyyo/fastapi-pagination
- stars: 1353
+ stars: 1378
owner_login: uriyyo
owner_html_url: https://github.com/uriyyo
-- name: budgetml
- html_url: https://github.com/ebhy/budgetml
- stars: 1342
- owner_login: ebhy
- owner_html_url: https://github.com/ebhy
- name: fastapi-boilerplate
html_url: https://github.com/teamhide/fastapi-boilerplate
- stars: 1325
+ stars: 1348
owner_login: teamhide
owner_html_url: https://github.com/teamhide
-- name: vue-fastapi-admin
- html_url: https://github.com/mizhexiaoxiao/vue-fastapi-admin
- stars: 1306
- owner_login: mizhexiaoxiao
- owner_html_url: https://github.com/mizhexiaoxiao
+- name: budgetml
+ html_url: https://github.com/ebhy/budgetml
+ stars: 1344
+ owner_login: ebhy
+ owner_html_url: https://github.com/ebhy
- name: fastapi-amis-admin
html_url: https://github.com/amisadmin/fastapi-amis-admin
- stars: 1256
+ stars: 1284
owner_login: amisadmin
owner_html_url: https://github.com/amisadmin
+- name: bracket
+ html_url: https://github.com/evroon/bracket
+ stars: 1274
+ owner_login: evroon
+ owner_html_url: https://github.com/evroon
- name: fastapi-tutorial
html_url: https://github.com/liaogx/fastapi-tutorial
- stars: 1245
+ stars: 1265
owner_login: liaogx
owner_html_url: https://github.com/liaogx
- name: fastapi-code-generator
html_url: https://github.com/koxudaxi/fastapi-code-generator
- stars: 1201
+ stars: 1216
owner_login: koxudaxi
owner_html_url: https://github.com/koxudaxi
-- name: bracket
- html_url: https://github.com/evroon/bracket
- stars: 1201
- owner_login: evroon
- owner_html_url: https://github.com/evroon
- name: bolt-python
html_url: https://github.com/slackapi/bolt-python
- stars: 1179
+ stars: 1190
owner_login: slackapi
owner_html_url: https://github.com/slackapi
-- name: fastapi_production_template
- html_url: https://github.com/zhanymkanov/fastapi_production_template
- stars: 1147
- owner_login: zhanymkanov
- owner_html_url: https://github.com/zhanymkanov
+- name: fastcrud
+ html_url: https://github.com/benavlabs/fastcrud
+ stars: 1169
+ owner_login: benavlabs
+ owner_html_url: https://github.com/benavlabs
- name: prometheus-fastapi-instrumentator
html_url: https://github.com/trallnag/prometheus-fastapi-instrumentator
- stars: 1145
+ stars: 1167
owner_login: trallnag
owner_html_url: https://github.com/trallnag
+- name: fastapi_production_template
+ html_url: https://github.com/zhanymkanov/fastapi_production_template
+ stars: 1165
+ owner_login: zhanymkanov
+ owner_html_url: https://github.com/zhanymkanov
- name: bedrock-chat
html_url: https://github.com/aws-samples/bedrock-chat
- stars: 1143
+ stars: 1163
owner_login: aws-samples
owner_html_url: https://github.com/aws-samples
- name: langchain-extract
html_url: https://github.com/langchain-ai/langchain-extract
- stars: 1134
+ stars: 1142
owner_login: langchain-ai
owner_html_url: https://github.com/langchain-ai
- name: odmantic
html_url: https://github.com/art049/odmantic
- stars: 1118
+ stars: 1121
owner_login: art049
owner_html_url: https://github.com/art049
+- name: fastapi_best_architecture
+ html_url: https://github.com/fastapi-practices/fastapi_best_architecture
+ stars: 1118
+ owner_login: fastapi-practices
+ owner_html_url: https://github.com/fastapi-practices
- name: fastapi-alembic-sqlmodel-async
html_url: https://github.com/jonra1993/fastapi-alembic-sqlmodel-async
- stars: 1110
+ stars: 1116
owner_login: jonra1993
owner_html_url: https://github.com/jonra1993
-- name: fastcrud
- html_url: https://github.com/benavlabs/fastcrud
- stars: 1080
+- name: FastAPI-boilerplate
+ html_url: https://github.com/benavlabs/FastAPI-boilerplate
+ stars: 1070
owner_login: benavlabs
owner_html_url: https://github.com/benavlabs
- name: restish
html_url: https://github.com/rest-sh/restish
- stars: 1056
+ stars: 1069
owner_login: rest-sh
owner_html_url: https://github.com/rest-sh
-- name: fastapi_best_architecture
- html_url: https://github.com/fastapi-practices/fastapi_best_architecture
- stars: 1050
- owner_login: fastapi-practices
- owner_html_url: https://github.com/fastapi-practices
- name: runhouse
html_url: https://github.com/run-house/runhouse
- stars: 1034
+ stars: 1037
owner_login: run-house
owner_html_url: https://github.com/run-house
- name: autollm
html_url: https://github.com/viddexa/autollm
- stars: 992
+ stars: 994
owner_login: viddexa
owner_html_url: https://github.com/viddexa
- name: lanarky
html_url: https://github.com/ajndkr/lanarky
- stars: 990
+ stars: 992
owner_login: ajndkr
owner_html_url: https://github.com/ajndkr
-- name: FastAPI-boilerplate
- html_url: https://github.com/benavlabs/FastAPI-boilerplate
- stars: 985
- owner_login: benavlabs
- owner_html_url: https://github.com/benavlabs
- name: authx
html_url: https://github.com/yezz123/authx
- stars: 938
+ stars: 953
owner_login: yezz123
owner_html_url: https://github.com/yezz123
- name: secure
html_url: https://github.com/TypeError/secure
- stars: 935
+ stars: 941
owner_login: TypeError
owner_html_url: https://github.com/TypeError
-- name: langcorn
- html_url: https://github.com/msoedov/langcorn
- stars: 925
- owner_login: msoedov
- owner_html_url: https://github.com/msoedov
- name: energy-forecasting
html_url: https://github.com/iusztinpaul/energy-forecasting
- stars: 913
+ stars: 928
owner_login: iusztinpaul
owner_html_url: https://github.com/iusztinpaul
+- name: langcorn
+ html_url: https://github.com/msoedov/langcorn
+ stars: 927
+ owner_login: msoedov
+ owner_html_url: https://github.com/msoedov
- name: titiler
html_url: https://github.com/developmentseed/titiler
- stars: 886
+ stars: 901
owner_login: developmentseed
owner_html_url: https://github.com/developmentseed
- name: flock
html_url: https://github.com/Onelevenvy/flock
- stars: 866
+ stars: 896
owner_login: Onelevenvy
owner_html_url: https://github.com/Onelevenvy
-- name: httpdbg
- html_url: https://github.com/cle-b/httpdbg
- stars: 863
- owner_login: cle-b
- owner_html_url: https://github.com/cle-b
+- name: fastapi-langgraph-agent-production-ready-template
+ html_url: https://github.com/wassim249/fastapi-langgraph-agent-production-ready-template
+ stars: 896
+ owner_login: wassim249
+ owner_html_url: https://github.com/wassim249
- name: marker-api
html_url: https://github.com/adithya-s-k/marker-api
- stars: 859
+ stars: 875
owner_login: adithya-s-k
owner_html_url: https://github.com/adithya-s-k
-- name: ludic
- html_url: https://github.com/getludic/ludic
- stars: 845
- owner_login: getludic
- owner_html_url: https://github.com/getludic
+- name: httpdbg
+ html_url: https://github.com/cle-b/httpdbg
+ stars: 870
+ owner_login: cle-b
+ owner_html_url: https://github.com/cle-b
- name: fastapi-do-zero
html_url: https://github.com/dunossauro/fastapi-do-zero
- stars: 827
+ stars: 855
owner_login: dunossauro
owner_html_url: https://github.com/dunossauro
+- name: ludic
+ html_url: https://github.com/getludic/ludic
+ stars: 849
+ owner_login: getludic
+ owner_html_url: https://github.com/getludic
- name: fastapi-observability
html_url: https://github.com/blueswen/fastapi-observability
- stars: 823
+ stars: 837
owner_login: blueswen
owner_html_url: https://github.com/blueswen
-- name: fastapi-langgraph-agent-production-ready-template
- html_url: https://github.com/wassim249/fastapi-langgraph-agent-production-ready-template
- stars: 803
- owner_login: wassim249
- owner_html_url: https://github.com/wassim249
-- name: fastapi-mail
- html_url: https://github.com/sabuhish/fastapi-mail
- stars: 798
- owner_login: sabuhish
- owner_html_url: https://github.com/sabuhish
+- name: fastapi-scaf
+ html_url: https://github.com/atpuxiner/fastapi-scaf
+ stars: 821
+ owner_login: atpuxiner
+ owner_html_url: https://github.com/atpuxiner
- name: starlette-admin
html_url: https://github.com/jowilf/starlette-admin
- stars: 785
+ stars: 808
owner_login: jowilf
owner_html_url: https://github.com/jowilf
-- name: lccn_predictor
- html_url: https://github.com/baoliay2008/lccn_predictor
- stars: 767
- owner_login: baoliay2008
- owner_html_url: https://github.com/baoliay2008
+- name: fastapi-mail
+ html_url: https://github.com/sabuhish/fastapi-mail
+ stars: 807
+ owner_login: sabuhish
+ owner_html_url: https://github.com/sabuhish
- name: aktools
html_url: https://github.com/akfamily/aktools
- stars: 759
+ stars: 796
owner_login: akfamily
owner_html_url: https://github.com/akfamily
-- name: KonomiTV
- html_url: https://github.com/tsukumijima/KonomiTV
- stars: 748
- owner_login: tsukumijima
- owner_html_url: https://github.com/tsukumijima
+- name: RuoYi-Vue3-FastAPI
+ html_url: https://github.com/insistence/RuoYi-Vue3-FastAPI
+ stars: 782
+ owner_login: insistence
+ owner_html_url: https://github.com/insistence
diff --git a/docs/en/docs/index.md b/docs/en/docs/index.md
index 0f3623ed5..938882d7d 100644
--- a/docs/en/docs/index.md
+++ b/docs/en/docs/index.md
@@ -468,15 +468,20 @@ Used by Starlette:
* jinja2
- Required if you want to use the default template configuration.
* python-multipart
- Required if you want to support form "parsing", with `request.form()`.
-Used by FastAPI / Starlette:
+Used by FastAPI:
* uvicorn
- for the server that loads and serves your application. This includes `uvicorn[standard]`, which includes some dependencies (e.g. `uvloop`) needed for high performance serving.
-* `fastapi-cli` - to provide the `fastapi` command.
+* `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
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`
+
+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
There are some additional dependencies you might want to install.
diff --git a/docs/en/docs/release-notes.md b/docs/en/docs/release-notes.md
index 7c71fdb2a..d085081e2 100644
--- a/docs/en/docs/release-notes.md
+++ b/docs/en/docs/release-notes.md
@@ -7,12 +7,31 @@ hide:
## Latest Changes
+## 0.116.0
+
+### Features
+
+* ✨ Add support for deploying to FastAPI Cloud with `fastapi deploy`. PR [#13870](https://github.com/fastapi/fastapi/pull/13870) by [@tiangolo](https://github.com/tiangolo).
+
+Installing `fastapi[standard]` now includes `fastapi-cloud-cli`.
+
+This will allow you to deploy to [FastAPI Cloud](https://fastapicloud.com) with the `fastapi deploy` command.
+
+If you want to install `fastapi` with the standard dependencies but without `fastapi-cloud-cli`, you can install instead `fastapi[standard-no-fastapi-cloud-cli]`.
+
### Translations
+* 🌐 Add Russian translation for `docs/ru/docs/advanced/response-directly.md`. PR [#13801](https://github.com/fastapi/fastapi/pull/13801) by [@NavesSapnis](https://github.com/NavesSapnis).
+* 🌐 Add Russian translation for `docs/ru/docs/advanced/additional-status-codes.md`. PR [#13799](https://github.com/fastapi/fastapi/pull/13799) by [@NavesSapnis](https://github.com/NavesSapnis).
* 🌐 Add Ukrainian translation for `docs/uk/docs/tutorial/body-updates.md`. PR [#13804](https://github.com/fastapi/fastapi/pull/13804) by [@valentinDruzhinin](https://github.com/valentinDruzhinin).
### Internal
+* ⬆ Bump pillow from 11.1.0 to 11.3.0. PR [#13852](https://github.com/fastapi/fastapi/pull/13852) by [@dependabot[bot]](https://github.com/apps/dependabot).
+* 👥 Update FastAPI People - Sponsors. PR [#13846](https://github.com/fastapi/fastapi/pull/13846) by [@tiangolo](https://github.com/tiangolo).
+* 👥 Update FastAPI GitHub topic repositories. PR [#13848](https://github.com/fastapi/fastapi/pull/13848) by [@tiangolo](https://github.com/tiangolo).
+* ⬆ Bump mkdocs-material from 9.6.1 to 9.6.15. PR [#13849](https://github.com/fastapi/fastapi/pull/13849) by [@dependabot[bot]](https://github.com/apps/dependabot).
+* ⬆ [pre-commit.ci] pre-commit autoupdate. PR [#13843](https://github.com/fastapi/fastapi/pull/13843) by [@pre-commit-ci[bot]](https://github.com/apps/pre-commit-ci).
* 👥 Update FastAPI People - Contributors and Translators. PR [#13845](https://github.com/fastapi/fastapi/pull/13845) by [@tiangolo](https://github.com/tiangolo).
## 0.115.14
diff --git a/docs/en/docs/tutorial/index.md b/docs/en/docs/tutorial/index.md
index 4fe38256c..17f6fb685 100644
--- a/docs/en/docs/tutorial/index.md
+++ b/docs/en/docs/tutorial/index.md
@@ -76,10 +76,12 @@ $ pip install "fastapi[standard]"
/// note
-When you install with `pip install "fastapi[standard]"` it comes with some default optional standard dependencies.
+When you install with `pip install "fastapi[standard]"` it comes with some default optional standard dependencies, including `fastapi-cloud-cli`, which allows you to deploy to FastAPI Cloud.
If you don't want to have those optional dependencies, you can instead install `pip install fastapi`.
+If you want to install the standard dependencies but without the `fastapi-cloud-cli`, you can install with `pip install "fastapi[standard-no-fastapi-cloud-cli]"`.
+
///
## Advanced User Guide
diff --git a/docs/ru/docs/advanced/additional-status-codes.md b/docs/ru/docs/advanced/additional-status-codes.md
new file mode 100644
index 000000000..aab1f8ee3
--- /dev/null
+++ b/docs/ru/docs/advanced/additional-status-codes.md
@@ -0,0 +1,41 @@
+# Дополнительные статус коды
+
+По умолчанию **FastAPI** возвращает ответы, используя `JSONResponse`, помещая содержимое, которое вы возвращаете из вашей *операции пути*, внутрь этого `JSONResponse`.
+
+Он будет использовать код статуса по умолчанию или тот, который вы укажете в вашей *операции пути*.
+
+## Дополнительные статус коды
+
+Если вы хотите возвращать дополнительный статус код помимо основного, вы можете сделать это, возвращая объект `Response` напрямую, как `JSONResponse`, и устанавливая нужный статус код напрямую.
+
+Например, скажем, вы хотите создать *операцию пути*, которая позволяет обновлять элементы и возвращает HTTP-код 200 "OK" при успешном выполнении.
+
+Но вы также хотите, чтобы она принимала новые элементы. И если элемент ранее не существовал, он создаётся, и возвращался HTTP-код 201 "Created".
+
+Чтобы реализовать это, импортируйте `JSONResponse` и возвращайте ваш контент напрямую, устанавливая нужный `status_code`:
+
+{* ../../docs_src/additional_status_codes/tutorial001_an_py310.py hl[4,25] *}
+
+/// warning | Внимание
+
+Когда вы возвращаете объект `Response` напрямую, как в примере выше, он будет возвращён как есть.
+
+Он не будет сериализован при помощи модели и т.д.
+
+Убедитесь, что в нём содержатся именно те данные, которые вы хотите, и что значения являются валидным JSON (если вы используете `JSONResponse`).
+
+///
+
+/// note | Технические детали
+
+Вы также можете использовать `from starlette.responses import JSONResponse`.
+
+**FastAPI** предоставляет тот же `starlette.responses` через `fastapi.responses` просто для вашего удобства, как разработчика. Но большинство доступных Response-классов поступают напрямую из Starlette. То же самое касается и `status`.
+
+///
+
+## OpenAPI и документация API
+
+Если вы возвращаете дополнительные коды статусов и ответы напрямую, они не будут включены в схему OpenAPI (документацию API), потому что FastAPI не может заранее знать, что вы собираетесь вернуть.
+
+Но вы можете задокументировать это в вашем коде, используя: [Дополнительные ответы в OpenAPI](additional-responses.md){.internal-link target=_blank}.
diff --git a/docs/ru/docs/advanced/response-directly.md b/docs/ru/docs/advanced/response-directly.md
new file mode 100644
index 000000000..ee83d22b1
--- /dev/null
+++ b/docs/ru/docs/advanced/response-directly.md
@@ -0,0 +1,65 @@
+# Возврат ответа напрямую
+
+Когда вы создаёте **FastAPI** *операцию пути*, вы можете возвращать из неё любые данные: `dict`, `list`, Pydantic-модель, модель базы данных и т.д.
+
+По умолчанию **FastAPI** автоматически преобразует возвращаемое значение в JSON с помощью `jsonable_encoder`, как описано в [JSON кодировщик](../tutorial/encoder.md){.internal-link target=_blank}.
+
+Затем "под капотом" эти данные, совместимые с JSON (например `dict`), помещаются в `JSONResponse`, который используется для отправки ответа клиенту.
+
+Но вы можете возвращать `JSONResponse` напрямую из ваших *операций пути*.
+
+Это может быть полезно, например, если нужно вернуть пользовательские заголовки или куки.
+
+## Возврат `Response`
+
+На самом деле, вы можете возвращать любой объект `Response` или его подкласс.
+
+/// tip | Подсказка
+
+`JSONResponse` сам по себе является подклассом `Response`.
+
+///
+
+И когда вы возвращаете `Response`, **FastAPI** передаст его напрямую.
+
+Это не приведет к преобразованию данных с помощью Pydantic-моделей, содержимое не будет преобразовано в какой-либо тип и т.д.
+
+Это даёт вам большую гибкость. Вы можете возвращать любые типы данных, переопределять любые объявления или валидацию данных и т.д.
+
+## Использование `jsonable_encoder` в `Response`
+
+Поскольку **FastAPI** не изменяет объект `Response`, который вы возвращаете, вы должны убедиться, что его содержимое готово к отправке.
+
+Например, вы не можете поместить Pydantic-модель в `JSONResponse`, не преобразовав её сначала в `dict` с помощью преобразования всех типов данных (таких как `datetime`, `UUID` и т.д.) в совместимые с JSON типы.
+
+В таких случаях вы можете использовать `jsonable_encoder` для преобразования данных перед передачей их в ответ:
+
+{* ../../docs_src/response_directly/tutorial001.py hl[6:7,21:22] *}
+
+/// note | Технические детали
+
+Вы также можете использовать `from starlette.responses import JSONResponse`.
+
+**FastAPI** предоставляет `starlette.responses` через `fastapi.responses` просто для вашего удобства, как разработчика. Но большинство доступных Response-классов поступают напрямую из Starlette.
+
+///
+
+## Возврат пользовательского `Response`
+
+Пример выше показывает все необходимые части, но он пока не очень полезен, так как вы могли бы просто вернуть `item` напрямую, и **FastAPI** поместил бы его в `JSONResponse`, преобразовав в `dict` и т.д. Всё это происходит по умолчанию.
+
+Теперь давайте посмотрим, как можно использовать это для возврата пользовательского ответа.
+
+Допустим, вы хотите вернуть ответ в формате XML.
+
+Вы можете поместить ваш XML-контент в строку, поместить её в `Response` и вернуть:
+
+{* ../../docs_src/response_directly/tutorial002.py hl[1,18] *}
+
+## Примечания
+
+Когда вы возвращаете объект `Response` напрямую, его данные не валидируются, не преобразуются (не сериализуются) и не документируются автоматически.
+
+Но вы всё равно можете задокументировать это, как описано в [Дополнительные ответы в OpenAPI](additional-responses.md){.internal-link target=_blank}.
+
+В следующих разделах вы увидите, как использовать/объявлять такие кастомные `Response`, при этом сохраняя автоматическое преобразование данных, документацию и т.д.
diff --git a/fastapi/__init__.py b/fastapi/__init__.py
index e672ec9e5..873ae18e0 100644
--- a/fastapi/__init__.py
+++ b/fastapi/__init__.py
@@ -1,6 +1,6 @@
"""FastAPI framework, high performance, easy to learn, fast to code, ready for production"""
-__version__ = "0.115.14"
+__version__ = "0.116.0"
from starlette import status as status
diff --git a/pyproject.toml b/pyproject.toml
index 1c540e2f6..a3fc54e3d 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -58,7 +58,26 @@ Changelog = "https://fastapi.tiangolo.com/release-notes/"
[project.optional-dependencies]
standard = [
- "fastapi-cli[standard] >=0.0.5",
+ "fastapi-cli[standard] >=0.0.8",
+ # For the test client
+ "httpx >=0.23.0",
+ # For templates
+ "jinja2 >=3.1.5",
+ # For forms and file uploads
+ "python-multipart >=0.0.18",
+ # To validate email fields
+ "email-validator >=2.0.0",
+ # Uvicorn with uvloop
+ "uvicorn[standard] >=0.12.0",
+ # TODO: this should be part of some pydantic optional extra dependencies
+ # # Settings management
+ # "pydantic-settings >=2.0.0",
+ # # Extra Pydantic data types
+ # "pydantic-extra-types >=2.0.0",
+]
+
+standard-no-fastapi-cloud-cli = [
+ "fastapi-cli[standard-no-fastapi-cloud-cli] >=0.0.8",
# For the test client
"httpx >=0.23.0",
# For templates
@@ -77,7 +96,7 @@ standard = [
]
all = [
- "fastapi-cli[standard] >=0.0.5",
+ "fastapi-cli[standard] >=0.0.8",
# # For the test client
"httpx >=0.23.0",
# For templates
diff --git a/requirements-docs.txt b/requirements-docs.txt
index 606314926..5c5701f73 100644
--- a/requirements-docs.txt
+++ b/requirements-docs.txt
@@ -1,6 +1,6 @@
-e .
-r requirements-docs-tests.txt
-mkdocs-material==9.6.1
+mkdocs-material==9.6.15
mdx-include >=1.4.1,<2.0.0
mkdocs-redirects>=1.2.1,<1.3.0
typer == 0.16.0
@@ -8,7 +8,7 @@ pyyaml >=5.3.1,<7.0.0
# For Material for MkDocs, Chinese search
jieba==0.42.1
# For image processing by Material for MkDocs
-pillow==11.1.0
+pillow==11.3.0
# For image processing by Material for MkDocs
cairosvg==2.7.1
mkdocstrings[python]==0.26.1