FastAPI是一个现代的、高性能的、强大的Python Web框架,非常适合于构建RESTful API。
Awesome-fastapi 收集了大量 fastapi 相关的优秀应用、项目等资源,方便了 fastapi 用户参考查阅。
FastAPI 优秀资源大全 则是翻译而来。也欢迎你帮助推荐和提供建议
赞善或进入python技术群:钉钉或微信 pythontesting、 支付宝xurongzhong#gmail.com, 请将#替换为@。
python测试开发钉钉群:21745728,目前800多人,另有几千人的python测试开发微信群,可联系 钉钉或微信号 pythontesting 加群(备注:python)!
python八字排盘 目前市面上功能最强大的八字排盘,科学的尽头是道教,玄学。
本指南主要收集GitHub星级1k+的库。
访问密码: 2274, 无需注册,点击普通下载即可。如遇失效可加钉钉或微信 pythontesting获取。
- FastAPI Modern Python Web Development .epub
- Web API Development with Python A Beginners Guide using Flask and FastAPI .epub
- Full Stack FastAPI, React, and MongoDB Build Python web applications with the FARM stack .epub
- Building Data Science Applications with FastAPI Develop, manage, and deploy efficient machine learning applications with... .epub
- Building Python Web APIs with FastAPI .epub
- FastAPI Admin - 管理功能面板,为在数据上进行CRUD操作提供了用户接口。目前只适用于Tortoise ORM。
- SQLAlchemy Admin - FastAPI/Starlette的管理面板,适用于SQLAlchemy模型。
- FastAPI Users - 账户管理、认证、授权。 ★★
- GINO - 一个建立在SQLAlchemy核心之上的轻量级异步ORM,用于Python asyncio。 ★★
- ORM - 异步的ORM。 ★
- ormar - Ormar是一个异步ORM,它使用Pydantic验证,可以直接用于FastAPI请求和响应,因此你只需要维护一套模型。包括Alembic迁移。
- FastAPI实例 - 使用FastAPI与ormar。
- Piccolo - 一个异步ORM和查询生成器,支持Postgres和SQLite,带有电池(迁移、安全等)。
- FastAPI实例 - 在Piccolo中使用FastAPI。
- Prisma Client Python - 一个由Pydantic提供的自动生成的、完全类型安全的ORM,并为你的模式专门定制 - 支持SQLite、PostgreSQL、MySQL、MongoDB、MariaDB等。
- Tortoise ORM - 易于使用的asyncio ORM(对象关系映射器),灵感来自Django。 ★★★
- FastAPI实例 - 一个Tortoise-ORM FastAPI集成的实例。
- 教程:用FastAPI设置Tortoise ORM
- Aerich - Tortoise ORM的迁移工具。
- SQLModel - SQLModel(由Pydantic和SQLAlchemy支持)是一个从Python代码中与SQL数据库交互的库,使用Python对象。 ★★★★★
- Databases - 在SQLAlchemy Core表达式语言之上工作的异步SQL查询构建器。 ★★
- Beanie - MongoDB的异步Python ODM,基于Motor和Pydantic,支持开箱即用的数据和模式迁移。
- MongoEngine - 文档-对象映射器(ORM,但用于文档数据库),用于Python与MongoDB一起工作。
- Motor - MongoDB的异步Python驱动。 ★★
- ODMantic - 与Pydantic集成的AsyncIO MongoDB ODM。
- Pydantic-SQLAlchemy - 将SQLAlchemy模型转换成Pydantic模型。
- FastAPI代码生成器 - 从OpenAPI文件创建FastAPI应用程序,实现模式驱动的开发。
- Manage FastAPI - 用于生成和管理FastAPI项目的CLI工具。
- FastAPI Mail - 用于发送电子邮件和附件(单独和批量)的轻量级邮件系统。
- FastAPI Cache - 用于缓存FastAPI响应和函数结果的工具,支持Redis、Memcached、DynamoDB和内存后端。
- FastAPI CRUDRouter - FastAPI路由器,为你的模型自动创建和记录CRUD路由。
- FastAPI Pagination - FastAPI的分页。
- FastAPI Utilities - 可重复使用的实用程序:基于类的视图、响应推断路由器、定期任务、定时中间件、SQLAlchemy会话、OpenAPI规范简化。
- SlowApi - 速度限制器(基于Flask-Limiter)。
- Strawberry GraphQL - 基于数据类的Python GraphQL库。
- 文档 - 全面的文档。 ★★★★★
- Tutorial - 官方教程,一步一步地展示如何使用FastAPI的大部分功能。 ★★★★★
- 源代码 ★★★★★
- Discord - 与其他FastAPI用户聊天。
- TestDriven.io FastAPI - 多篇针对FastAPI的文章,侧重于开发和测试生产就绪的RESTful API,提供机器学习模型,以及其他。
- Build The Next Generation Of Python Web Applications With FastAPI - 在Podcast Init的这一集中,FastAPI的创建者Sebastián Ramirez分享了他创建FastAPI的动机以及它是如何在引擎盖下工作的。
- PythonBytes上的FastAPI - 项目的良好概述。
- FastAPI对我来说永远毁了Flask
- [Why we switched from Flask to FastAPI for production machine learning](https://medium.com/@calebkaiser/why-we-switched-from-flask to-fastapi-for-production-machine-learning-765aab9b3679) - 深入探讨为什么要从Flask转移到FastAPI。
- Async SQLAlchemy with FastAPI - 学习如何异步地使用SQLAlchemy。
- Build and Secure an API in Python with FastAPI - 保护和维护基于FastAPI和SQLAlchemy的API。
- 将Docker化的FastAPI应用部署到Google云平台 - 使用Cloud Run和SQL实例将Docker化的Python应用部署到Google云平台的简短指南。
- 使用Keras、FastAPI、Redis和Docker部署机器学习模型
- Deploying Iris Classifications with FastAPI and Docker - Docker化FastAPI应用程序。
- 使用FastAPI和Pytest开发和测试异步API - 使用测试驱动开发,用FastAPI、Postgres、Pytest和Docker开发和测试一个异步API。
- FastAPI for Flask Users - 通过与Flask的并列代码比较来学习FastAPI。
- FastAPI微服务模式 - 博客文章系列,包括微服务模式的示范性实现。
- Local Development Environment - Skaffold、docker、kubectl和minikube的简述。
- 容器编排平台中的服务发现](https://florian-kromer.medium.com/fastapi-microservice-patterns-service-discovery-in-container-orchestration-platforms-290c00d1ad8) - 在Kubernetes中启用FastAPI服务通信的解释。
- Asynchronous Communication - 通过消息传递实现松散耦合的服务。
- 应用监控 - 使用Prometheus和Grafana进行应用指标监控。
- 无服务器部署 - 关于FastAPI和Kubernetes原生FaaS平台之间的兼容性现状。
- GraphQL in Python with FastAPI and Ariadne入门 - 使用FastAPI、GraphQL和Ariadne生成一个FullStack游乐场。
- How to monitor your FastAPI service - 解释如何使用OpenTelemetry和Datadog/Jaeger实现应用性能监控(APM)。
- Implementing FastAPI Services - Abstraction and Separation of Concerns - FastAPI应用程序和服务结构,使代码库更容易维护。
- 介绍FARM栈 - FastAPI、React和MongoDB](https://www.mongodb.com/developer/languages/python/farm-stack-fastapi-react-mongodb/) - 开始使用完整的FastAPI网络应用程序栈。
- 使用FastAPI、SQLAlchemy和PostgreSQL的多租户 - 了解如何使FastAPI应用程序做好多租户准备。
- Porting Flask to FastAPI for ML Model Serving - Flask与FastAPI的比较。
- 使用FastAPI和WebSockets的实时数据流 - 了解如何将数据从FastAPI直接流到实时图表中。
- 在生产中运行FastAPI应用程序 - 在生产部署中使用Gunicorn和systemd。
- 用FastAPI在Python中服务机器学习模型 - 使用FastAPI在Python中以RESTful API方式快速、轻松地部署和服务机器学习模型。
- 使用FastAPI流媒体视频 - 了解如何为视频流提供服务。
- Using Hypothesis and Schemathesis to Test FastAPI - 将基于属性的测试应用于FastAPI。
- PyConBY 2020: Serve ML models easily with FastAPI - 从Sebastian Ramirez的演讲中,你将了解到如何用FastAPI为你的ML模型轻松构建一个生产就绪的网络(JSON)API,包括默认的最佳实践。
- PyCon UK 2019: FastAPI from the ground up - 本讲座展示了如何使用FastAPI从头开始为数据库构建一个简单的REST API。
- 用FastAPI构建股票筛选器](https://www.youtube.com/watch?v=5GorMC2lPpk) - 用FastAPI构建一个基于Web的股票筛选器,你将被介绍到FastAPI的许多功能,包括Pydantic模型、依赖注入、后台任务和SQLAlchemy集成。
- Building Web APIs Using FastAPI - 使用FastAPI来构建网络应用程序接口(RESTful API)。
- FastAPI - A Web Framework for Python - 看看如何用FastAPI做数字验证。
- FastAPI vs. Django vs. Flask - 2020年哪个框架最适合Python?哪个使用async/await最好?哪一个是最快的?
- Serving Machine Learning Models As API with FastAPI - 使用FastAPI构建机器学习API。
- Test-Driven Development with FastAPI and Docker - 学习如何使用Python、FastAPI和Docker构建、测试和部署一个文本总结的微服务。
- Modern APIs with FastAPI and Python - 本课程旨在让您利用FastAPI快速创建在云中运行的新API。
- 使用FastAPI的完整网络应用程序课程 - 您将学习如何使用FastAPI构建完整的网络应用程序,相当于使用Flask或Django所能做到的。
- The Definitive Guide to Celery and FastAPI - 了解如何将Celery添加到FastAPI应用程序中以提供异步任务处理。
- FastAPI最佳实践 - 在GitHub repo中收集的最佳实践。
(Platforms-as-a-Service)
- Heroku (Step-by-step tutorial, Heroku上的ML模型教程
- AWS Elastic Beanstalk
- 谷歌应用引擎
- Microsoft Azure App Service
- Deta (例子)
(基础设施即服务)
###无服务器
框架。
计算。
-
全栈FastAPI和PostgreSQL - 基础项目生成器](https://github.com/tiangolo/full-stack-fastapi-postgresql) - 全栈、现代网络应用程序生成器,包括FastAPI、PostgreSQL、Docker、Celery、Vue前端、自动HTTPS等(由FastAPI的创造者Sebastián Ramírez 开发)。
-
FastAPI和Tortoise ORM - 强大而简单的网络API模板,包括FastAPI(作为网络框架)和Tortoise-ORM(用于通过数据库工作而不需要头痛)。
-
FastAPI Model Server Skeleton - 为机器学习模型提供服务的骨架应用,可供生产使用。
-
cookiecutter-spacy-fastapi - 使用FastAPI快速部署specy模型。
-
cookiecutter-fastapi - 用于FastAPI项目的Cookiecutter模板,使用。机器学习、Poetry、Azure Pipelines和pytest。
-
openapi-python-client - 从OpenAPI生成现代FastAPI Python客户端(通过FastAPI)。
-
fastapi-gino-arq-uvicorn - 高性能异步REST API的模板,使用Python。FastAPI + GINO + Arq + Uvicorn (w/ Redis and PostgreSQL)。
-
FastAPI and React Template - 使用FastAPI、TypeScript、Docker、PostgreSQL和React的全堆栈cookiecutter模板。
-
FastAPI Nano - 带有工厂模式架构的简单FastAPI模板。
-
FastAPI模板 - 灵活、轻便的FastAPI项目生成器。它包括对SQLAlchemy、多个数据库、CI/CD、Docker和Kubernetes的支持。
-
FastAPI on Google Cloud Run - 使用FastAPI、SQLModel和Google Cloud Run构建API的模板。
-
FastAPI with Firestore - 使用FastAPI和Google Cloud Firestore构建API的模板。
-
fastapi-alembic-sqlmodel-async - 这是一个项目模板,使用FastAPI、Alembic和async SQLModel作为ORM。
-
fastapi-starter-project - 一个使用FastAPI、SQLModel、Alembic、Pytest、Docker、GitHub Actions CI的项目模板。
- inboard - Docker图像,为你的FastAPI应用程序提供动力,并帮助你更快地出货。
- uvicorn-gunicorn-fastapi-docker - 由Gunicorn管理的Uvicorn的Docker镜像,用于Python 3.7和3.6中的高性能FastAPI网络应用,具有性能自动调整功能。
- uvicorn-gunicorn-poetry - 这个Docker镜像提供了一个使用Gunicorn与Uvicorn工作者运行FastAPI的平台。它提供了用于管理依赖关系和在容器中设置虚拟环境的诗歌。
- uvicorn-poetry - 这个Docker镜像提供了一个在Kubernetes容器编排系统上使用Uvicorn运行FastAPI的平台。它提供了用于管理依赖关系和在容器中设置虚拟环境的诗歌。
- Astrobase - 简单、快速、安全地在任何地方进行部署。
- Awesome FastAPI Projects - 使用FastAPI的项目的组织列表。
- Bitcart - 为商家、用户和开发人员提供易于设置和使用的平台。
- Bali - 基于FastAPI和gRPC简化云原生微服务开发。
- Bunnybook - 一个用FastAPI、React+RxJs、Neo4j、PostgreSQL和Redis构建的小型社交网络。
- Coronavirus-tg-api - 用于跟踪全球冠状病毒(COVID-19、SARS-CoV-2)爆发的API。
- Dispatch - 管理安全事件。
- FastAPI CRUD实例。
- DogeAPI - 具有高性能的API,用于创建一个简单的博客和使用OAuth2PasswordBearer的CRUD。
- FastAPI Websocket Broadcast - Websocket "广播 "演示。
- FastAPI with Celery, RabbitMQ, and Redis - 利用FastAPI和Celery的最小例子,RabbitMQ用于任务队列,Redis用于Celery后端,Flower用于监控Celery任务。
- JeffQL - 使用GraphQL和JWT的简单认证和登录API。
- JSON-RPC服务器 - 基于FastAPI的JSON-RPC服务器。
- Mailer - 用于静态网站的非常简单的邮件微服务。
- Nemo - 使用Nemo提高生产力。
- OPAL(Open Policy Administration Layer) - 在Open-Policy之上的实时授权更新;用FastAPI、Typer和FastAPI WebSocket pub/sub构建。
- RealWorld Example App - mongo
- RealWorld Example App - postgres
- redis-streams-fastapi-chat - 一个使用Websockets、Asyncio和FastAPI/Starlette的简单Redis Streams支持的聊天应用程序。
- Sprites as a service - 使用Cellular Automata生成你个人的8位头像。
- Slackers - Slack webhooks API。
- TermPair - 通过端到端加密从你的浏览器查看和控制终端。
- Universities - 用于获取全球9600所大学信息的API服务。