What problem does it solve?
Angular dependency injection can become verbose and hard to manage at scale. This Skill introduces the modern Angular v20+ DI ergonomics using inject(), tokens, and provider configuration to simplify wiring dependencies across components, services, and routes.
Core Features & Use Cases
- Use inject() to access services directly in components and standalone functions without constructor boilerplate.
- Define and consume InjectionTokens for configuration, feature flags, and cross-cutting concerns.
- Configure provider scopes (root, component, route) and hierarchical injection to control lifetimes and testability.
- Leverage advanced patterns like EnvironmentInjector and runInInjectionContext for dynamic DI and testing.
Quick Start
Create a minimal Angular 20+ app and demonstrate the inject API by defining a simple service and a component that uses inject() to obtain the service.