1 Repo
Storing dependency requirements in class metadata for runtime resolution.
Distinct from Decorator-Based: Distinct from general decorator-based attachment as it specifically targets dependency injection requirements.
Explore 1 awesome GitHub repository matching software engineering & architecture · Dependency Metadata. Refine with filters or upvote what's useful.
tsyringe ist ein TypeScript-Dependency-Injection-Container und ein Inversion-of-Control-Framework. Es entkoppelt Klassenimplementierungen von der Objekterstellung, indem es Abhängigkeiten und Objektlebenszyklen mithilfe von Decorators und Metadaten verwaltet. Das Framework verfügt über ein hierarchisches Containersystem, bei dem untergeordnete Container unabhängige Registrierungsbereiche beibehalten und für die Abhängigkeitsauflösung auf übergeordnete Container zurückgreifen können. Es bietet ein Provider-System, das die Objektlebensdauer durch Singleton- und Transient-Instanziierungsregeln steuert. Das System unterstützt rekursive Konstruktor-Injektion und handhabt zirkuläre Abhängigkeiten mithilfe von Proxies. Es umfasst Funktionen für Token-basiertes Registry-Mapping, Multi-Implementierungs-Auflösung und automatisierte Ressourcenfreigabe für Objekte, die Cleanup-Interfaces implementieren.
Uses TypeScript decorators to store dependency requirements in class metadata for runtime retrieval.