What problem does it solve? Configuring dependency injection in modern Angular requires choosing between inject() and constructor injection, selecting correct provider scopes, and wiring injection tokens correctly. This Skill provides concrete patterns for service architecture, provider configuration, and DI hierarchy in Angular v20+ applications. ## Core Features & Use Cases - Modern Injection Patterns: Use inject() instead of constructor injection, create injectable services with providedIn, and manage singleton versus component-scoped instances. - Injection Tokens & Provider Types: Create InjectionToken objects with factories, and configure useClass, useValue, useFactory, useExisting, and multi providers. - Advanced Scenarios: App initializers, environment injectors, runInInjectionContext, hierarchical injection, testing with mocked providers, and DestroyRef cleanup. - Use Case: When building a feature that needs a route-scoped service shared across child components, use route-level providers and inject() to share one instance without prop drilling. ## Quick Start Ask the AI to create an Angular service using inject() with an injection token for the API URL and configure it in app.config.ts.