What problem does it solve? Managing reactive state in Angular applications often involves verbose RxJS subscriptions, manual cleanup, and change detection complexity. This Skill provides patterns for implementing fine-grained, synchronous reactivity with Angular Signals, reducing boilerplate and simplifying state flows. ## Core Features & Use Cases - Core Signal APIs: Create writable state with signal(), derived state with computed(), resettable dependent state with linkedSignal(), and side effects with effect(). - RxJS Interoperability: Convert Observables to signals with toSignal() and signals back to Observables with toObservable() for gradual migration from BehaviorSubject patterns. - Advanced Patterns: Reference material covers the resource() API for async data fetching, signal stores, form state, optimistic updates, and testing strategies. - Use Case: When building a todo list component, use signal() for the items array, computed() for filtered views and remaining counts, and update methods for immutable state transitions—no subscriptions or ngOnDestroy cleanup required. ## Quick Start Ask the AI to refactor an Angular component's BehaviorSubject-based state into signals using signal(), computed(), and effect().