概述
Elysia 旨在实现模块化和轻量化。
遵循与 Arch Linux 相同的理念(顺便说一句,我使用 Arch):
设计决策是通过开发者共识逐个案例做出的
这确保了开发者最终能够创建出高性能的 web 服务器。因此,Elysia 包含了预构建的常见模式插件,以方便开发者使用:
官方插件
以下是由 Elysia 团队维护的一些官方插件:
- Bearer - 自动检索 Bearer 令牌
- CORS - 设置 跨源资源共享 (CORS)
- Cron - 设置 cron 任务
- Eden - Elysia 的端到端类型安全客户端
- GraphQL Apollo - 在 Elysia 上运行 Apollo GraphQL
- GraphQL Yoga - 在 Elysia 上运行 GraphQL Yoga
- HTML - 处理 HTML 响应
- JWT - 使用 JWT 进行身份验证
- OpenAPI - 生成 OpenAPI 文档
- OpenTelemetry - 添加对 OpenTelemetry 的支持
- Server Timing - 使用 Server-Timing API 进行性能瓶颈审计
- Static - 提供静态文件/文件夹
社区插件
- Create ElysiaJS - 轻松搭建您的 Elysia 项目环境(帮助处理 ORM、Linters 和插件)!
- Lucia Auth - 身份验证,简单而清晰
- Elysia Clerk - 非官方 Clerk 身份验证插件
- Elysia Polyfills - 在 Node.js 和 Deno 上运行 Elysia 生态系统
- Vite server - 插件,在
development模式下启动和装饰vite开发服务器,在production模式下提供静态文件(如果需要) - Vite - 提供注入 Vite 脚本的入口 HTML 文件
- Nuxt - 轻松将 Elysia 与 Nuxt 集成!
- Remix - 使用
HMR支持的 Remix!关闭一个长期存在的插件请求 #12 - Sync - 一个基于 Dexie.js 的轻量级离线优先数据同步框架
- Connect middleware - 插件,允许您在 Elysia 中直接使用
express/connect中间件! - Elysia HTTP Exception - Elysia 插件,用于处理 HTTP 4xx/5xx 错误,提供结构化异常类
- Elysia Helmet - 用各种 HTTP 头安全保护 Elysia 应用
- Vite Plugin SSR - 使用 Elysia 服务器的 Vite SSR 插件
- OAuth 2.0 - 用于 OAuth 2.0 授权流程的插件,支持超过 42 个提供者且具有 类型安全性!
- OAuth2 - 处理 OAuth 2.0 授权码流
- OAuth2 Resource Server - 插件,用于验证来自 OAuth2 提供者的 JWT 令牌与 JWKS 端点,支持发行者、受众和范围验证
- Elysia OpenID Client - 基于 openid-client 的 OpenID 客户端
- Rate Limit - 简单轻量的速率限制器
- LLMs.txt - 从 OpenAPI/Swagger 生成适合 LLM 的
/llms.txt文档 - Logysia - 经典的日志中间件
- Logestic - 为 ElysiaJS 提供的高级可定制日志库
- Logger - 基于 pino 的日志中间件
- Elysia Line - Elysia 的 LINE Messaging API 和 LINE 登录集成(基于官方 @line/bot-sdk 的封装)
- Elylog - 简单的 stdout 日志库,具备一些自定义功能
- Logify for Elysia.js - 一款优雅、快速且类型安全的 Elysia.js 应用日志中间件
- Nice Logger - 可能不是最好的,但对于 Elysia 来说是一个相当不错且甜美的日志器。
- LogTape for Elysia - 支持多种目的地(传输)的结构化日志中间件,基于 LogTape
- Sentry - 使用此 Sentry 插件捕获追踪和错误
- Elysia Lambda - 部署在 AWS Lambda 上
- Decorators - 使用 TypeScript 装饰器
- Autoload - 基于目录结构的文件系统路由,支持生成 Eden 的类型,并支持
Bun.build - Msgpack - 允许您与 MessagePack 一起工作
- XML - 允许您与 XML 一起工作
- Autoroutes - 文件系统路由
- Group Router - 基于文件系统和文件夹的组路由器
- Basic Auth - 基本 HTTP 身份验证
- ETag - 自动生成 HTTP ETag
- CDN Cache - Elysia 的 Cache-Control 插件 - 不再手动设置 HTTP 头
- Basic Auth - 基本 HTTP 身份验证(使用
request事件) - i18n - 基于 i18next 的 i18n 封装
- Intlify - 国际化服务器中间件及工具
- Elysia Request ID - 添加/转发请求 ID(
X-Request-ID或自定义) - Elysia HTMX - HTMX 的上下文助手
- Elysia HMR HTML - 在更改目录中的任何文件时重新加载 HTML 文件
- Elysia Inject HTML - 将 HTML 代码注入 HTML 文件
- Elysia HTTP Error - 从 Elysia 处理程序返回 HTTP 错误
- Elysia Http Status Code - 集成 HTTP 状态代码
- NoCache - 禁用缓存
- Elysia Tailwind - 在插件中编译 Tailwindcss。
- Elysia Compression - 压缩响应
- Elysia IP - 获取 IP 地址
- OAuth2 Server - 使用 Elysia 开发 OAuth2 服务器
- Elysia Flash Messages - 启用闪存消息
- Elysia AuthKit - 非官方 WorkOS' AuthKit 身份验证
- Elysia Error Handler - 更简单的错误处理
- Elysia env - 具有 typebox 的类型安全环境变量
- Elysia Drizzle Schema - 帮助在 Elysia OpenAPI 模型中使用 Drizzle ORM 架构。
- Unify-Elysia - 为 Elysia 统一错误代码
- Unify-Elysia-GQL - 为 Elysia GraphQL 服务器(Yoga & Apollo)统一错误代码
- Elysia Auth Drizzle - 处理 JWT 认证的库(头/ Cookie/ 查询参数)。
- graceful-server-elysia - 受 graceful-server 启发的库。
- Logixlysia - 旨在为 ElysiaJS 提供美观且简单的日志中间件,支持颜色和时间戳。
- Elysia Fault - 提供简单且可定制的错误处理中间件,允许创建自定义 HTTP 错误。
- Elysia Compress - ElysiaJS 插件,用于压缩响应,灵感来自 @fastify/compress
- @labzzhq/compressor - 紧凑的卓越与广泛的结果:支持 gzip、deflate 和 brotli 的 Elysia 和 Bunnyhop HTTP 压缩器。
- Elysia Accepts - 用于接受头解析和内容协商的 Elysia 插件
- Elysia Compression - 用于压缩响应的 Elysia 插件
- Elysia Logger - 用于记录 HTTP 请求和响应的 Elysia 插件,灵感来自 hono/logger
- Elysia CQRS - Elysia 插件,实现 CQRS 模式
- Elysia Supabase - 无缝集成 Supabase 身份验证和数据库功能,使访问经过身份验证的用户数据和 Supabase 客户端实例变得容易。特别适用于 Edge Functions。
- Elysia XSS - 为 Elysia.js 提供 XSS(跨站脚本)保护的插件,清洗请求体数据。
- Elysiajs Helmet - 为 Elysia.js 应用提供全面安全性的中间件,通过设置各种 HTTP 头保护您的应用。
- Decorators for Elysia.js - 使用这个小库无缝开发和集成 API、Websocket 和流式 API。
- Elysia Protobuf - 为 Elysia 支持 Protobuf。
- Elysia Prometheus - Elysia 插件,用于为 Prometheus 暴露 HTTP 监控指标。
- Elysia Remote DTS - 为 Eden Treaty 提供可远程消费的 .d.ts 类型的插件。
- Cap Checkpoint plugin for Elysia - 类 Cloudflare 的中间件,用于 Cap,一个轻量级、现代的开源 CAPTCHA 替代方案,使用 SHA-256 PoW 设计。
- Elysia Background - 用于 Elysia.js 的后台任务处理插件
- Elysia External Session - 仅 TypeScript GitHub 包 - 一个支持 redis 和 SQLite 的会话包,可扩展且使用当前的 Elysia 架构。
- @fedify/elysia - 与 Fedify 平台无缝集成的插件,兼容 ActivityPub 服务器框架。
- elysia-healthcheck - 用于 Elysia.js 的健康检查插件
- elysia-csrf - CSRF 插件,移植自 express-csrf
- elysia-local-https - Elysia 的自动本地 HTTPS —— 证书一行代码生成、管理和更新。
- elysia-circuit-breaker - 为 Elysia.js 带来容错能力的断路器插件。
- Eden TanStack Query - 为 Eden 提供类型安全的 TanStack Query 集成,类似 @trpc/react-query,但面向 Elysia。
- Socket.IO Proxy - Elysia 的 Socket.IO 代理。
- ModernCSRF - 轻量级、无令牌的 ElysiaJS CSRF 防护中间件
- elysia-wide-event - 用于结构化请求级别可观察性的广域事件日志插件。
- elysia-beta-headers - Elysia 插件,基于类型安全 API 头管理应用的测试/实验性功能
相关项目:
- prismabox - 基于您的数据库模型生成 typebox 模式的生成器,适用于 Elysia
如果您为 Elysia 编写了一个插件,请随时通过 点击下面的 在 GitHub 上编辑此页面 将您的插件添加到列表中 👇