Skip to content
Back to skills

Angular Architecture Angular Patterns Senior

ASecurity

Orchestrates senior Angular architecture review by selecting focused patterns for container/presentational components, facades, state boundaries, service responsibility, and reactive contracts.

  • 4 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 2, 2026
developmenttypescriptgoreactangulartestingrefactoringapifrontend

Works with

  • api

Security analysis

A100/100

Scanned October 2, 2026

npx -y skills add janpereira-dev/ngAutoPilot --skill angular--architecture--angular-patterns-senior --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Angular Architecture Angular Patterns Senior?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Angular  Architecture  Angular Patterns Senior
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/janpereira-dev-angular-architecture-angular-patterns-senior-ngautopilot/badge)](https://www.skillsdirectory.com/skills/janpereira-dev-angular-architecture-angular-patterns-senior-ngautopilot)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
id: angular.architecture.angular-patterns-senior
name: Angular Senior Architecture Patterns
description: >
  Orchestrates senior Angular architecture review by selecting focused patterns for container/presentational components, facades, state boundaries, service responsibility, and reactive contracts.
stack:
  - Angular
  - TypeScript
  - RxJS
category: architecture
status: stable
version: 0.10.0
owner: NgAutoPilot
triggers:
  - Angular architecture review
  - senior Angular patterns
  - scalable Angular structure
  - refactor Angular component
  - split Angular responsibilities
  - facade pattern
compatibility:
  angular:
    min: "2"
    conservativeBaseline: "12+"
    signalsFrom: "16"
    recommendedModern: "17+"
    currentSafe: "19+"
---

# Angular Senior Architecture Patterns

## Purpose

Use this skill to route an Angular architecture task to the smallest applicable architecture skill. The goal is to improve structure, testability, and maintainability without turning every component into a ceremony-heavy architecture exercise.

This is a coordinator skill. It should select focused micro-skills instead of applying every architecture pattern at once.

## When to Use

Use this skill when:

- A component fetches data, maps DTOs, manages state, handles navigation, renders complex UI, and owns permissions at the same time.
- A service has unrelated responsibilities or a generic name such as `CommonService`, `ManagerService`, or `UtilsService`.
- A feature has unclear ownership between UI, API, state, and orchestration.
- Components depend on many low-level services directly.
- Mutable state is exposed through public subjects or writable signals.
- The user asks whether to use RxJS, Signals, facades, or container/presentational split.
- A shared library, microfrontend, or reusable feature needs cleaner public contracts.

## Do

Select the smallest matching architecture skill:

```txt
component orchestration vs UI rendering -> angular.components.container-presentational
Signals vs RxJS decision -> angular.state.signals-vs-rxjs
feature API and service coordination -> angular.architecture.facade-pattern
god service or generic service -> angular.services.single-responsibility-services
public reactive contracts -> angular.rxjs.observable-contracts
version-gated Angular APIs -> angular.versioning.angular-version-gates
providers, injectors, InjectionToken, or NullInjectorError -> angular.dependency-injection
```

Before recommending code, identify:

```txt
Angular version
project style: NgModules, standalone, or mixed
state model: RxJS, Signals, store, facade, or custom service state
file role: app, feature, shared library, data-access, UI, or microfrontend boundary
testing stack: Jest, Jasmine/Karma, Vitest, or unknown
compatibility constraints: legacy support, modern-only, or shared package
```

Prefer incremental refactoring:

```txt
1. Identify responsibilities.
2. Split the highest-risk responsibility first.
3. Define a narrow public contract.
4. Protect mutable internals.
5. Add tests around behavior before deeper restructuring.
```

## Do Not

Avoid applying patterns just because they sound senior:

```txt
Create a facade, store, mapper, state service, UI library, and signal model for a trivial component.
```

Avoid recommending Signals for Angular versions that do not support them.

Avoid replacing RxJS with Signals for asynchronous workflows by default.

Avoid creating a facade that only forwards one method and adds no useful boundary.

Avoid turning containers into business-rule monoliths.

## Review Checklist

- [ ] Angular version is identified before recommending version-specific APIs.
- [ ] The current file responsibilities are listed.
- [ ] The selected pattern solves a real maintainability or testing problem.
- [ ] Presentational components do not fetch data.
- [ ] Services have bounded responsibilities.
- [ ] Mutable subjects or writable signals are not exposed publicly.
- [ ] RxJS remains the default for cancellation, retries, streams, and async orchestration.
- [ ] Signals are limited to compatible versions and appropriate local synchronous state.
- [ ] The proposed split reduces coupling instead of adding ceremony.

## Expected Output

1. Diagnose the current architecture problem.
2. Select the smallest relevant micro-skill.
3. Explain version compatibility and APIs to avoid.
4. Propose an incremental target structure.
5. Include testing guidance and overengineering risks.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…