software-architecture

Apply Clean Architecture and Domain-Driven Design principles to software projects.

6|Updated Mar 1, 2026
One-click install
npx skills add https://github.com/ChrstprJohn/SamsonDentalCenter --skill software-architecture-chrstprjohn
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: software-architecture
Source: https://github.com/ChrstprJohn/SamsonDentalCenter/tree/main/.agent/skills/SystemArchitecture/software-architecture
Command: npx skills add https://github.com/ChrstprJohn/SamsonDentalCenter --skill software-architecture-chrstprjohn

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill provides a structured approach to building high-quality software architectures by applying Clean Architecture and Domain-Driven Design principles, helping teams maintain clarity, scalability, and testability across codebases.

Core Features & Use Cases

  • Clear separation of concerns with defined layer boundaries and bounded contexts to prevent leakage between domain logic and infrastructure.
  • Emphasis on domain-driven design, explicit dependencies, and consistent naming conventions to improve readability and onboarding.
  • Architecture guidance that scales from small applications to large systems, with actionable rules and patterns for code structure and decisions.

Quick Start

Draft a new module following Clean Architecture and DDD with clear domain boundaries and testable interfaces.

Frequently Asked Questions about software-architecture

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

FAQPage Schema
How do I structure my codebase using clean architecture and domain-driven design?

Clean architecture and DDD structure your codebase by enforcing clear separation of concerns and bounded contexts, preventing domain logic leakage into infrastructure layers for maintainable, scalable software.

What are bounded contexts and when do I need them in software architecture?

Bounded contexts define explicit boundaries around specific domain logic in software architecture. You need them to prevent leakage between domain models and ensure independent module scaling and testability.

Can I apply DDD principles to small applications or is it only for large enterprise platforms?

You can apply DDD principles to small applications as well as large enterprise platforms. This architectural guidance scales from small apps to large systems with actionable rules for code structure and decisions.

What is the best way to establish explicit dependencies and consistent naming conventions across modules?

The best way to establish explicit dependencies and consistent naming conventions is applying domain-driven design rules. This improves code readability, streamlines onboarding, and maintains clear module boundaries.

Why does my domain logic keep leaking into infrastructure layers?

Domain logic leaks into infrastructure due to missing clear layer boundaries and bounded contexts. Applying clean architecture principles ensures separation of concerns and prevents unwanted coupling between layers.