Overview â
Elysia is designed to be modular and lightweight.
Following the same idea as Arch Linux (btw, I use Arch):
Design decisions are made on a case-by-case basis through developer consensus
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: â
- Bearer - retrieve Bearer token automatically
- CORS - set up Cross-origin resource sharing (CORS)
- Cron - set up cron job
- Eden - end-to-end type safety client for Elysia
- GraphQL Apollo - run Apollo GraphQL on Elysia
- GraphQL Yoga - run GraphQL Yoga on Elysia
- HTML - handle HTML responses
- JWT - authenticate with JWTs
- Server Timing - audit performance bottlenecks with the Server-Timing API
- Static - serve static files/folders
- Stream - integrate response streaming and server-sent events (SSEs)
- Swagger - generate Swagger documentation
- tRPC - support tRPC
- WebSocket - support WebSockets
Community plugins: â
- Lucia Auth - authentication, simple and clean
- Elysia Clerk - unofficial Clerk authentication plugin
- Elysia Polyfills - run Elysia ecosystem on Node.js and Deno
- Vite - serve entry HTML file with Vite's scripts injected
- Nuxt - easily integrate elysia with nuxt!
- Elysia Helmet - secure Elysia apps with various HTTP headers
- Vite Plugin SSR - Vite SSR plugin using Elysia server
- OAuth2 - handle OAuth 2.0 authorization code flow
- Rate Limit - simple, lightweight rate limiter
- Logysia - classic logging middleware
- Logger - pino-based logging middleware
- Elysia Lambda - deploy on AWS Lambda
- Decorators - use TypeScript decorators
- Autoload - filesystem router based on a directory structure that generates types for Eden
- Msgpack - allows you to work with MessagePack
- Autoroutes - filesystem routes
- Group Router - filesystem and folder-based router for groups
- Basic Auth - basic HTTP authentication
- ETag - automatic HTTP ETag generation
- Basic Auth - basic HTTP authentication (using
request
event) - i18n - i18n wrapper based on i18next
- Elysia Request ID - add/forward request IDs (
X-Request-ID
or custom) - Elysia HTMX - context helpers for HTMX
- Elysia HMR HTML - reload HTML files when changing any file in a directory
- Elysia Inject HTML - inject HTML code in HTML files
- Elysia HTTP Error - return HTTP errors from Elysia handlers
- Elysia Http Status Code - integrate HTTP status codes
- NoCache - disable caching
- Elysia Tailwind - compile Tailwindcss in a plugin.
- Elysia Compression - compress response
- Elysia IP - get the IP Address
- OAuth2 Server - developing an OAuth2 Server with Elysia
- Elysia Flash Messages - enable flash messages
- Elysia AuthKit - unnoficial WorkOS' AuthKit authentication
- Elysia Error Handler - simpler error handling
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 ð