主题
概述
¥Overview
Elysia 采用模块化和轻量级设计。
¥Elysia is designed to be modular and lightweight.
遵循与 Arch Linux 相同的理念(顺便说一句,我使用的是 Arch):
¥Following the same idea as Arch Linux (btw, I use Arch):
设计决策是根据开发者的共识逐一做出的。
这是为了确保开发者最终能够获得他们想要创建的高性能 Web 服务器。此外,Elysia 还包含预构建的通用模式插件,方便开发者使用:
¥This is to ensure developers end up with a performant web server they intend to create. By extension, Elysia includes pre-built common pattern plugins for convenient developer usage:
官方插件:
¥Official plugins:
CORS - 设置 跨域资源共享 (CORS)
Eden - Elysia 的端到端类型安全客户端
GraphQL Apollo - 在 Elysia 上运行 Apollo GraphQL
GraphQL Yoga - 在 Elysia 上运行 GraphQL Yoga
HTML - 处理 HTML 响应
OpenTelemetry - 添加对 OpenTelemetry 的支持
静态 - 提供静态文件/文件夹
Stream - 集成响应流和 服务器发送的事件(上证所)
WebSocket - 支持 WebSockets
社区插件:
¥Community plugins:
创建 ElysiaJS - 轻松构建 Elysia 项目与环境(支持 ORM、Linter 和插件)!
Lucia 身份验证 - 身份验证,简洁明了
Elysia Clerk - 非官方 Clerk 身份验证插件
Elysia Polyfills - 在 Node.js 和 Deno 上运行 Elysia 生态系统
Vite 服务器 - 此插件在
development
模式下启动并装饰vite
开发服务器,并在production
模式下提供静态文件(如果需要)Vite - 服务入口 HTML 文件,并注入 Vite 脚本
Nuxt - 轻松将 Elysia 与 Nuxt! 集成
Elysia HTTP 异常 - Elysia 插件支持 HTTP 4xx/5xx 错误处理,并带有结构化异常类
Elysia Helmet - 使用各种 HTTP 标头保护 Elysia 应用
Vite 插件 SSR - 使用 Elysia 服务器的 Vite SSR 插件
OAuth2 - 处理 OAuth 2.0 授权码流程
OAuth2 资源服务器 - 一个用于验证来自 OAuth2 提供程序的 JWT 令牌与 JWKS 端点的插件,支持颁发者、受众和范围验证。
Elysia OpenID 客户端 - 基于 openid-client 的 OpenID 客户端
速率限制 - 简单、轻量级的速率限制器
Logysia - 经典日志中间件
Logestic - 一个高级且可自定义的 ElysiaJS 日志库
Elylog - 具有一定自定义功能的简单 stdout 日志库
Elysia.js 的 Logify - 一个美观、快速且类型安全的 Elysia.js 应用日志中间件
Nice 记录器 - 虽然不是最美观的,但对于 Elysia 来说,这是一个相当不错且实用的日志记录器。
Elysia Lambda 表达式 - 在 AWS Lambda 上部署
装饰器 - 使用 TypeScript 装饰器
Msgpack - 允许你使用 MessagePack
XML - 允许你使用 XML
自动路由 - 文件系统路由
群组路由 - 基于文件系统和文件夹的群组路由
基本身份验证 - 基本 HTTP 身份验证
CDN 缓存 - Elysia 的 Cache-Control 插件 - 无需再手动设置 HTTP 标头
基本身份验证 - 基本 HTTP 身份验证(使用
request
事件)Elysia 请求 ID - 添加/转发请求 ID(
X-Request-ID
或自定义)Elysia HTMX - HTMX 的上下文助手
Elysia HMR HTML - 修改目录中任何文件时重新加载 HTML 文件
Elysia 注入 HTML - 在 HTML 文件中注入 HTML 代码
Elysia HTTP 错误 - 从 Elysia 处理程序返回 HTTP 错误
Elysia Http 状态码 - 集成 HTTP 状态码
NoCache - 禁用缓存
Elysia Tailwind - 在插件中编译 Tailwindcss。
Elysia Compression - 压缩响应
Elysia IP 地址 - 获取 IP 地址
OAuth2 服务器 - 使用 Elysia 开发 OAuth2 服务器
Elysia Flash 消息 - 启用闪退消息
Elysia AuthKit - 非官方 WorkOS 的 AuthKit 身份验证
Elysia 错误处理程序 - 更简单的错误处理
Elysia 环境 - 使用 typebox 的类型安全环境变量
Elysia Drizzle Schema - 有助于在 Elysia OpenAPI 模型中使用 Drizzle ORM schema。
Unify-Elysia - 统一 Elysia 的错误代码
Unify-Elysia-GQL - 统一 Elysia GraphQL 服务器(Yoga 和 Apollo)的错误代码
Elysia Auth Drizzle - 使用 JWT(Header/Cookie/QueryParam)处理身份验证的库。
graceful-server-elysia - 受 graceful-server 启发的库。
Logixlysia - 一个美观简洁的 ElysiaJS 日志中间件,带有颜色和时间戳功能。
Elysia 故障 - 一个简单且可自定义的错误处理中间件,可以创建你自己的 HTTP 错误。
Elysia Compress - 受 @fastify/compress 启发的 ElysiaJS 响应压缩插件
@labzzhq/compressor - 精简的辉煌,扩展的结果:适用于 Elysia 和 Bunnyhop 的 HTTP 压缩器,支持 gzip、deflate 和 brotli。
Elysia 接受 - Elysia 插件支持 accept 标头解析和内容协商
Elysia Compression - Elysia 插件支持响应压缩
Elysia 日志记录器 - Elysia 插件支持记录 HTTP 请求和响应,灵感源自 hono/logger
Elysia CQRS - Elysia 插件支持 CQRS 模式
Elysia Supabase - 将 Supabase 身份验证和数据库功能无缝集成到 Elysia,允许轻松访问经过身份验证的用户数据和 Supabase 客户端实例。对 边缘函数 特别有用。
Elysia XSS - 一个 Elysia.js 插件,通过清理请求体数据来提供 XSS(跨站脚本)保护。
Elysiajs Helmet - 一个全面的 Elysia.js 应用安全中间件,可通过设置各种 HTTP 标头来保护你的应用安全。
Elysia.js 装饰器 - 使用这个小型库无缝开发和集成 API、Websocket 和 Streaming API。
Elysia Protobuf - Elysia 支持 protobuf。
Elysia Prometheus - Elysia 插件支持为 Prometheus 公开 HTTP 指标。
Elysia 远程数据转换服务 (DTS) - 一个插件,为 Eden Treaty 远程提供 .d.ts 类型以供使用。
Cap Checkpoint 插件 Elysia - 类似 Cloudflare 的 Cap 中间件,一款轻量级、现代的开源 CAPTCHA 替代方案,采用 SHA-256 PoW 设计。
Elysia 背景 - Elysia.js 的后台任务处理插件
@fedify/elysia - 一个与 ActivityPub 服务器框架 Fedify 无缝集成的插件。
补充项目:
¥Complementary projects:
- prismabox - 基于数据库模型的 TypeBox 方案生成器,与 Elysia 完美兼容
如果你有为 Elysia 编写的插件,请点击下方的在 GitHub 上编辑此页面,将你的插件添加到列表中。 👇
¥If you have a plugin written for Elysia, feel free to add your plugin to the list by clicking Edit this page on GitHub below 👇