hoangnguyen0403/angular-components
Build standalone Angular components with Signals inputs, OnPush change detection, Control Flow, and Smart/Dumb patterns. Use when building standalone Angular components, implementing @if/@for control flow, applying OnPush change detection, or implementing Signals in Angular components.
npx skills add https://github.com/HoangNguyen0403/agent-skills-standard --skill angular-components
standalone: true. Import all deps in imports array. No NgModule. (Angular 20+: standalone default.)host: { } on @Component (e.g., '[class.active]': 'isActive()') — never use @HostBinding/@HostListener.Emulated. Use None carefully.ChangeDetectionStrategy.OnPush. No exceptions.input.required<T>() or input<T>() not @Input(). Access as functions: {{ userId() }}. Use booleanAttribute/numberAttribute transforms.output<T>() (v17.3+) not @Output() EventEmitter. Two-way binding: model().signal() local, computed() derived, effect() side effects only.toSignal() (auto-unsubscribes), takeUntilDestroyed(), or DestroyRef. Never subscribe() without cleanup.@if (condition), @for (item of items; track item.id), @switch, @empty { } instead of *ngIf/*ngFor (new control flow syntax, Angular 17+).{{ calculate() }} re-evaluates every cycle → computed() instead.async pipe or toSignal. Never subscribe() without cleanup.When this skill applies, preserve the following domain terminology or equivalent concrete examples in the answer when relevant:
Take hoangnguyen0403/angular-components from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.