angular-architecture

gentleman-programming/gentleman-skills · updated Apr 8, 2026

$npx skills add https://github.com/gentleman-programming/gentleman-skills --skill angular-architecture
0 commentsdiscussion
summary

"Scope determines structure" - Where a component lives depends on its usage.

skill.md

The Scope Rule (REQUIRED)

"Scope determines structure" - Where a component lives depends on its usage.

Usage Placement
Used by 1 feature features/[feature]/components/
Used by 2+ features features/shared/components/

Example

features/
  shopping-cart/
    shopping-cart.ts          # Main component = feature name
    components/
      cart-item.ts            # Used ONLY by shopping-cart
      cart-summary.ts         # Used ONLY by shopping-cart
  checkout/
    checkout.ts
    components/
      payment-form.ts         # Used ONLY by checkout
  shared/
    components/
      button.ts               # Used by shopping-cart AND checkout
      modal.ts                # Used by multiple features

Project Structure

src/app/
  features/
    [feature-name]/
      [feature-name].ts       # Main component (same name as folder)
      components/             # Feature-specific components
      services/               # Feature-specific services
      models/                 # Feature-specific types
    shared/                   # ONLY for 2+ feature usage
      components/
      services/
      pipes/
  core/                       # App-wide singletons
    services/
    interceptors/
    guards/
  app.ts
  app.config.ts
  routes.ts
  main.ts

File Naming (REQUIRED)

No .component, .service, .model suffixes. The folder tells you what it is.

✅ user-profile.ts
❌ user-profile.component.ts

✅ cart.ts
❌ cart.service.ts

✅ user.ts
❌ user.model.ts

Style Guide

What We Follow (from official docs)

  • inject() over constructor injection
  • class and style bindings over ngClass/ngStyle
  • protected for template-only members
  • readonly for inputs, outputs, queries
  • Name handlers for action (saveUser) not event (handleClick)
  • Keep lifecycle hooks simple - delegate to well-named methods
  • One concept per file
@Component({...})
export class UserProfileComponent {
  // 1. Injected dependencies
  private readonly userService = inject(UserService);
  
  // 2. Inputs/Outputs
  readonly userId = input.required<string>();
  readonly userSaved = output<User>();
  
  // 3. Internal state
  private readonly _loading = signal(false);
  readonly loading = this._loading.asReadonly();
  
  // 4. Computed
  protected readonly displayName = computed(() => ...);
  
  // 5. Methods
  save(): void { ... }
}

What We Override

Official Says We Do Why
user-profile.component.ts user-profile.ts Redundant - folder tells context
user.service.ts user.ts Same

Commands

# New project
ng new my-app --style=scss --ssr=false

# Component in feature
ng g c features/products/components/product-card --flat

# Service in feature  
ng g s features/products/services/product --flat

# Guard in core
ng g g core/guards/auth --functional

Resources

Discussion

Product Hunt–style comments (not star reviews)
  • No comments yet — start the thread.
general reviews

Ratings

4.554 reviews
  • Yusuf Farah· Dec 28, 2024

    Registry listing for angular-architecture matched our evaluation — installs cleanly and behaves as described in the markdown.

  • Aisha Park· Dec 28, 2024

    angular-architecture reduced setup friction for our internal harness; good balance of opinion and flexibility.

  • Shikha Mishra· Dec 24, 2024

    Solid pick for teams standardizing on skills: angular-architecture is focused, and the summary matches what you get after install.

  • Camila Garcia· Dec 20, 2024

    angular-architecture has been reliable in day-to-day use. Documentation quality is above average for community skills.

  • Emma Chen· Dec 12, 2024

    I recommend angular-architecture for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.

  • Arya Yang· Dec 12, 2024

    Solid pick for teams standardizing on skills: angular-architecture is focused, and the summary matches what you get after install.

  • Fatima Menon· Nov 19, 2024

    angular-architecture fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.

  • Camila Zhang· Nov 19, 2024

    We added angular-architecture from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.

  • Emma Shah· Nov 3, 2024

    Keeps context tight: angular-architecture is the kind of skill you can hand to a new teammate without a long onboarding doc.

  • Tariq Singh· Oct 22, 2024

    angular-architecture is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.

showing 1-10 of 54

1 / 6