メインコンテンツへスキップ

Documentation Index

Fetch the complete documentation index at: https://docs.wyrly.dev/llms.txt

Use this file to discover all available pages before exploring further.

Wyrly DI は、モダンな TypeScript アプリ向けの小さな依存性注入ツールキットです。 実行時の型推測ではなく、明示的な依存の組み立てを重視します。アプリケーションは必要な 依存関係を宣言し、composition root で具体的なプロバイダーを登録し、コンテナまたは リクエストスコープから use case を解決します。

Wyrly を選ぶとき

次のものが必要なら Wyrly を選んでください。
  • 標準デコレーターで動く TypeScript DI
  • インターフェースベースの依存関係のための型付きトークン
  • Web アプリ向けリクエストスコープ
  • フレームワークに依存しないコアパッケージ
  • CI 向けの依存グラフ検査と検証
  • DDD や Clean Architecture と相性のよい設計スタイル

Wyrly を選ばないとき

Wyrly は full application framework や NestJS clone を目指していません。 意図的に避けているもの:
  • コンストラクタ型メタデータの自動取得
  • legacy decorators
  • parameter decorators
  • グローバルコンテナの自動設定
  • 自動スキャンや glob 登録
  • コアパッケージにおけるフレームワーク密結合

アーキテクチャとの相性

Wyrly はドメインとアプリケーションコードをフレームワークの詳細から独立させます。
interface UserRepository {
  findById(id: string): Promise<User | null>;
}

const UserRepositoryToken = token<UserRepository>("UserRepository");
ドメイン側の契約はアプリケーション層に残し、具体的な実装はインフラのコードに置いて、アプリの外側で組み合わせられます。

次のステップ