capabilities-layer

📁 7spade/black-tortoise 📅 8 days ago
1
总安装量
1
周安装量
#51288
全站排名
安装命令
npx skills add https://github.com/7spade/black-tortoise --skill capabilities-layer

Agent 安装分布

replit 1
opencode 1
codex 1
claude-code 1
gemini-cli 1

Skill 文档

Capabilities Layer

Intent

Deliver independent capabilities as bounded contexts that interact only via events and the workspace context.

Structure Rules

  • Keep each capability cohesive: UI + application orchestration + domain model (if needed).
  • Do not create cross-capability imports for business logic; communicate via events.

State Management

  • Use @ngrx/signals stores as the source of truth for capability state.
  • Derive view state via computed signals; avoid mutable arrays/objects and avoid .push().
  • Async side effects run through rxMethod + tapResponse with explicit operator choice.

Event-Driven Interactions

  • Publish domain/application events after persistence (append-before-publish).
  • Subscribe to events in application stores/effects, not in presentation components.

UI Rules

  • Standalone, zone-less components.
  • Templates bind to signals only and use Angular control flow (@if, @for, @switch, @defer).
  • Material Design 3 token usage only; no hardcoded colors.

Data Boundaries

  • Infrastructure returns Observables/Promises; convert to signals before templates.
  • Do not leak Firebase/DataConnect DTOs outside integration/infrastructure.

Testing Expectations

  • Cover critical flows with unit tests for store transitions and Playwright for happy paths.
  • Use stable selectors (data-testid, roles/labels).