This is a modern Angular coding assistant that enforces current best practices, specifically standalone components and the newer signal-based input/output functions instead of decorators. It's opinionated in a good way: it assumes standalone by default and pushes you toward OnPush change detection. If you're working on a greenfield Angular project or migrating to Angular 14+, this will keep you from falling back into old patterns. The 538 GitHub stars suggest the Gentleman Programming team has credibility in the Angular community. It's narrow in scope but does one thing well: keeping your Angular code current with the framework's direction rather than littered with deprecated patterns.

skills.sh installs
228
GitHub stars
665
last updated
Aug 21, 2026

Install

$ npx -y skills add gentleman-programming/gentleman-skills --skill angular-core --agent claude-code

Installs into .claude/skills of the current project.

Files

Standalone Components (REQUIRED)

Components are standalone by default. Do NOT set standalone: true.

@Component({
  selector: 'app-user',
  imports: [CommonModule],
  changeDetection: ChangeDetectionStrategy.OnPush,
  template: `...`
})
export class UserComponent {}

Input/Output Functions (REQUIRED)

// ✅ ALWAYS: Function-based
readonly user = input.required<User>();
readonly disabled = input(false);
readonly selected = output<User>();
readonly checked = model(false);  // Two-way binding

// ❌ NEVER: Decorators
@Input() user: User;
@Output() selected = new EventEmitter<User>();

Signals for State (REQUIRED)

readonly count = signal(0);
readonly doubled = computed(() => this.count() * 2);

// Update
this.count.set(5);
this.count.update(prev => prev + 1);

// Side effects
effect(() => localStorage.setItem('count', this.count().toString()));

NO Lifecycle Hooks (REQUIRED)

Signals replace lifecycle hooks. Do NOT use ngOnInit, ngOnChanges, ngOnDestroy.

// ❌ NEVER: Lifecycle hooks
ngOnInit() {
  this.loadUser();
}

Sponsors

Details

Repository
github.com/gentleman-programming/gentleman-skills
Category
Frontend Development
First seen
Jun 3, 2026

More from gentleman-programming/gentleman-skills

All 13
1raintree-technology avatarhig-components-layoutraintree-technology/apple-hig-skillshig components layout222skills.sh installs
2charleswiltgen avataraxiom-swiftui-layoutcharleswiltgen/axiomUse when layouts need to adapt to different screen sizes, iPad multitasking, or iOS 26 free-form windows — decision trees for ViewThatFits vs AnyLayout vs onGeo220skills.sh installs
3omer-metin avatarviral-hooksomer-metin/skills-for-antigravityExpert in creating opening lines, thumbnails, and hooks that stop the scroll. Covers curiosity gaps, pattern interrupts, emotional triggers, and platform-specif214skills.sh installs
4github avatarui-screenshotsgithub/awesome-copilotCapture screenshots of web apps during development using Playwright and PIL. Supports full-page captures, interactive states, and an iterate-on-crop workflow th212skills.sh installs
5oguzhan18 avatarangular-securityoguzhan18/angular-ecosystem-skillsALWAYS use when working with Angular Security, XSS prevention, CSRF protection, Content Security Policy, or sanitization in Angular applications.211skills.sh installs
6microsoft avatarwinui-ui-testingmicrosoft/win-dev-skillsAutomated UI testing for WinUI 3 apps — generate a batch test script, run all tests in one pass, read results. Covers element assertions, interactions, value ch201skills.sh installs