separation-of-concerns

Validate monorepo code organization into features/, platform/, and shell/ layers.

334|43|Updated Nov 14, 2025
One-click install
npx skills add https://github.com/NTCoding/claude-skillz --skill separation-of-concerns-ntcoding
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: separation-of-concerns
Source: https://github.com/NTCoding/claude-skillz/tree/main/separation-of-concerns
Command: npx skills add https://github.com/NTCoding/claude-skillz --skill separation-of-concerns-ntcoding

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill helps teams maintain architectural integrity by enforcing separation of concerns across features/, platform/, and shell/ using automated checks.

Core Features & Use Cases

  • Enforces the code organization model: features/ as verticals, platform/ and shell/ as horizontals.
  • Validates project structure and dependency boundaries to prevent cross-feature imports and improper infra placement.
  • Guides CI and code reviews by codifying SoC rules and providing actionable feedback.

Quick Start

Create a new feature under features/ following the SoC rules, then run npx depcruise --config .dependency-cruiser.mjs src/ to validate.

Frequently Asked Questions about separation-of-concerns

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I enforce separation of concerns in a TypeScript monorepo?

You enforce separation of concerns in a TypeScript monorepo by validating code organization into features/, platform/, and shell/ directories using an automated dependency-cruiser configuration to check structural boundaries.

How do I prevent cross-feature imports in my project structure?

Prevent cross-feature imports by applying automated dependency checks that validate your project structure, ensuring vertical features remain isolated and horizontal platform layers are properly separated during development and CI.

What is the best way to automate architectural discipline checks in CI?

The best way to automate architectural discipline checks in CI is codifying separation of concerns rules into a dependency-cruiser configuration, which provides actionable feedback on improper infra placement and boundary violations.

Does this dependency-cruiser configuration work with vertical and horizontal code organization?

Yes, this dependency-cruiser configuration works specifically with vertical and horizontal code organization by validating features/ as verticals and platform/ with shell/ as horizontals to maintain strict architectural boundaries.

How do I validate code organization boundaries after creating a new feature?

Validate code organization boundaries after creating a new feature by running npx depcruise --config .dependency-cruiser.mjs src/ to check for dependency violations and confirm proper infra separation.