elysiajs は何をしますか?
ElysiaJS(型安全で高性能なフレームワーク)を使ってバックエンドを作成します。
概要
ElysiaJS は、TypeScript の型推論を活用した、高速で型安全な Web フレームワークです。このスキルは、ElysiaJS を使用してバックエンド API を効率的に構築するためのガイドを提供します。
主な特徴
- 型安全性: TypeScript の型システムを最大限に活用し、コンパイル時にエラーを検出します。
- 高性能: 軽量で高速なランタイム(Bun 推奨)で動作し、低レイテンシを実現します。
- プラグインシステム: 豊富なプラグインエコシステムにより、認証、CORS、レート制限などの機能を簡単に追加できます。
- 直感的な API: シンプルで宣言的な API 設計により、学習コストを低減します。
対応プラットフォーム
- Bun
- Node.js
クイックスタート
# Bun を使用してプロジェクトを作成
bun create elysia app
# 依存関係をインストール
cd app
bun install
# 開発サーバーを起動
bun run dev
基本的なルーティング
import { Elysia } from 'elysia'
const app = new Elysia()
.get('/', () => 'Hello World')
.get('/user/:id', ({ params: { id } }) => {
return { id, name: `User ${id}` }
})
.post('/data', ({ body }) => {
return { received: body }
})
.listen(3000)
console.log(`Server running at http://localhost:${app.server?.port}`)
型安全なバリデーション
ElysiaJS は、スキーマベースのバリデーションをサポートしています。
import { Elysia, t } from 'elysia'
const app = new Elysia()
.post('/login', ({ body }) => {
return { success: true, email: body.email }
}, {
body: t.Object({
email: t.String({ format: 'email' }),
password: t.String({ minLength: 8 })
})
})
.listen(3000)
ミドルウェアとプラグイン
import { Elysia } from 'elysia'
import { cors } from '@elysiajs/cors'
import { swagger } from '@elysiajs/swagger'
const app = new Elysia()
.use(cors())
.use(swagger())
.get('/', () => 'Hello with CORS and Swagger')
.listen(3000)
詳細情報
- 公式ドキュメント: https://elysiajs.com
- GitHub リポジトリ: https://github.com/elysiajs/elysia
- プラグイン一覧: https://elysiajs.com/plugins/overview.html