三方包
Starlette 拥有一个快速发展的开发者社区,他们构建可集成到 Starlette 中的工具、依赖于 Starlette 的工具等。
以下是一些第三方软件包:
插件
该词可能是一个生僻词或特定领域的术语,我不确定其准确含义。如果您能提供更多的上下文或关于该词的信息,我将尽力为您提供更准确的中文翻译。仅根据目前的信息,“Apitally”直译为“阿皮塔利”,但这可能并不是您想要的结果
GitHub | 文档
简单的流量、错误和响应时间监控,以及针对 Starlette(和其他框架)的 API 密钥和权限管理。
Authlib (该词可能为特定的名称或术语,若有更多上下文信息,可能会有更准确的翻译)
GitHub | 文档
在构建 OAuth 和 OpenID Connect 客户端及服务器方面的终极 Python 库。查看如何与 Starlette 集成。
channel-box
另一种针对 WebSocket 广播的解决方案。从您代码的任何部分向频道组发送消息。查看 MySimpleChat,这是一个使用 channel-box
和 starlette
构建的简单聊天应用程序。
imia
用于 Starlette 的认证框架,具有可插拔的认证器和登录/注销流程。
mangum
适用于 AWS Lambda 和 API Gateway 的无服务器 ASGI 适配器。
nejma
使用 WebSockets 管理并向频道组发送消息。查看 nejma-chat,这是一个使用 nejma
和 starlette
构建的简单聊天应用程序。
Scout APM
一种 APM(应用性能监控)解决方案,可对您的应用程序进行检测以发现性能瓶颈。
SpecTree (该词如果有特定含义,仅根据当前英文难以准确翻译为中文,此处保留原文形式)
生成 OpenAPI 规范文档,并使用 Python 注释验证请求和响应。更少的样板代码(无需 YAML)。
starlette API 规范
针对 Starlette 的简单 APISpec 集成。通过在端点的文档字符串中以 YAML 格式声明 OpenAPI(Swagger)模式,记录使用 Starlette 构建的 REST API。
starlette 压缩
Starlette-Compress 是用于在 Starlette 中压缩响应的快速且简单的中间件。它添加了具有合理默认配置的 ZStd、Brotli 和 GZip 压缩支持。
starlette上下文
用于 Starlette 的中间件,允许您存储和访问请求的上下文数据。可与日志记录一起使用,以便日志自动使用诸如 x-request-id 或 x-correlation-id 之类的请求标头。
starlette cramjam
一个 Starlette 中间件,允许使用 brotli、gzip 和 deflate 压缩算法,且要求最低。
starlette OAuth2 API
一个用于通过 JWT 添加身份验证和授权的 Starlette 中间件。它完全依赖于一个身份验证提供程序向客户端颁发访问和/或 ID 令牌。
starlette prometheus
一个插件,用于提供一个端点,该端点基于其官方 Python 客户端公开 Prometheus 指标。
starlette WTF
一个用于整合 Starlette 和 WTForms 的简单工具。它是仿照优秀的 Flask-WTF 库建模的。
starlette - 登录
GitHub | 文档
针对 Starlette 的用户会话管理。它处理常见任务,如登录、注销以及在较长时间内记住用户会话。
starsessions
具有可定制存储后端的备用会话支持实现。
网络参数 - Starlette
针对 Starlette 的声明式请求解析和验证,构建于 webargs 之上。
允许您使用类型注释来解析查询字符串、JSON、表单、标头和 Cookie 。
路由器
用于 Starlette 的 FastAPI 风格路由。
允许您使用装饰器来生成路由表。
starception 异常
适用于 Starlette 应用的美观异常页面。
starlette - 管理后台
GitHub | 文档
简单且可扩展的管理界面框架。
使用 Tabler 和 Datatables 构建,它允许您为您的模型快速生成完全可定制的管理界面。您可以将数据导出为多种格式(CSV、PDF、Excel 等),使用包括 AND
和 OR
条件的复杂查询来筛选数据,上传文件,……
韦洛克斯
适用于 GCP 云函数的无服务器 ASGI 适配器。
starlette桥
GitHub | 文档
随着 on_startup
和 on_shutdown
的弃用,Starlette Bridge 确保您仍然可以使用旧的方式声明事件,其特殊之处在于,实际上在内部为您创建 lifespan
。这样,在保持 Starlette
的新 lifespan
事件的完整性的同时,确保了现有包的向后兼容性。
框架
FastAPI
GitHub | 文档
高性能、易学习、编码快、可用于生产的 Web API 框架。受 APIStar 以前的服务器系统启发,该系统对路由参数具有类型声明,基于 OpenAPI 规范版本 3.0.0 及以上(使用 JSON 模式),由 Pydantic 提供数据处理支持。
Flama
GitHub | 文档
Flama 是一个以数据科学为导向的框架,用于快速构建现代且强大的机器学习(ML)API。该框架的主要目的是使 ML API 的部署变得极其简单。借助 Flama,数据科学家现在只需一行代码,就可以快速将他们的 ML 模型转换为异步、自动文档化的 API。所有这些都只需几秒钟!
Flama 配备了直观的命令行界面(CLI),并提供了易于学习的理念,以加快构建高性能的 GraphQL、REST 和 ML API。此外,它为异步和可投入生产的服务开发提供了理想的解决方案,为 ML 模型提供自动部署。
Greppo
GitHub | 文档
一个用于构建地理空间仪表板和网络应用程序的 Python 框架。
Greppo 是一个开源的 Python 框架,可轻松构建地理空间仪表板和网络应用程序。它提供了一个工具包,可快速集成数据、算法、可视化和用户界面以实现交互性。它为后端变量的更新、逻辑的重新计算以及前端变化的反映(数据变异钩子)提供了 API。
响应器
GitHub | 文档
异步网络服务框架。一些特性:flask 风格的路由表达式、yaml 支持、OpenAPI 模式生成、后台任务、graphql 。
starlette应用程序
使用简单的应用系统打造您自己的框架,例如 Django-GDAPS 或 CakePHP。
暗星
一个简单的框架,有助于将把 HTML 发送到浏览器所需的代码量降至最低。将您的文件路径转换为 Starlette 路由,并将您的视图代码直接放在您的模板旁边。包括对 htmx 的支持,以帮助增强您的前端。
文档 GitHub
Xpresso
一个基于 Starlette、Pydantic 和 di 构建的灵活且可扩展的 Web 框架。
GitHub | 文档
Ellar
GitHub | 文档
Ellar 是一个 ASGI 网络框架,用于构建快速、高效且可扩展的 RESTAPIs 和服务器端应用程序。它在构建服务器端应用程序方面提供了高度的抽象性,并结合了 OOP(面向对象编程)和 FP(函数式编程)的元素 - 受 Nestjs 启发。
它构建在 3 个核心库 Starlette、Pydantic 和 injector 之上。
阿皮曼
为 Starlette 项目轻松集成 Swagger/OpenAPI 文档的扩展,并提供 SwaggerUI 和 RedocUI。
starlette - 巴贝尔
通过 Babel 集成提供翻译、本地化和时区支持。
starlette - 静态资源
允许为静态数据挂载包资源,类似于 StaticFiles 。
哨兵
GitHub | 文档
Sentry 是一款软件错误检测工具。它为解决性能问题和错误提供了可行的见解,允许用户诊断、修复和优化 Python 调试。此外,它与 Starlette 无缝集成,用于 Python 应用程序开发。Sentry 的功能包括错误跟踪、性能洞察、上下文信息以及警报/通知。
闪亮的
GitHub | 文档
Leveraging Starlette and asyncio, Shiny allows developers to create effortless Python web applications using the power of reactive programming. Shiny eliminates the hassle of manual state management, automatically determining the best execution path for your app at runtime while simultaneously minimizing re-rendering. This means that Shiny can support everything from the simplest dashboard to full-featured web apps.