agentsclimarketplace

Software architecture

Skill ComeOnOliver/skillshub/skills/aiskillstore/marketplace/doyajin174/software-architecture

🧠 The right skill, one API call. AI agent skills registry with token-efficient skill resolution. 5,000+ skills from 500+ top repos.

Install
npx -y skills add ComeOnOliver/skillshub --skill software-architecture

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

What its author says it does

Copied from the file, not written here

Clean Architecture and SOLID principles guide. Use this when designing systems, reviewing architecture, or making structural decisions.

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

3.9 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it

Software Architecture

Clean Architecture와 DDD 원칙 기반 μ†Œν”„νŠΈμ›¨μ–΄ 섀계 κ°€μ΄λ“œμž…λ‹ˆλ‹€.

Core Principles

SOLID

원칙섀λͺ…μ˜ˆμ‹œ
Single Responsibilityν•˜λ‚˜μ˜ ν΄λž˜μŠ€λŠ” ν•˜λ‚˜μ˜ μ±…μž„UserRepository vs UserService
Open/Closedν™•μž₯에 μ—΄λ¦Ό, μˆ˜μ •μ— λ‹«νž˜μΈν„°νŽ˜μ΄μŠ€ μ‚¬μš©
Liskov Substitutionν•˜μœ„ νƒ€μž…μ€ μƒμœ„ νƒ€μž… λŒ€μ²΄ κ°€λŠ₯상속 계약 μ€€μˆ˜
Interface Segregationν΄λΌμ΄μ–ΈνŠΈλ³„ μΈν„°νŽ˜μ΄μŠ€ 뢄리IReader vs IWriter
Dependency Inversion좔상화에 의쑴DI μ»¨ν…Œμ΄λ„ˆ μ‚¬μš©

Clean Architecture Layers

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚           Frameworks & Drivers          β”‚  ← DB, Web, UI
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚         Interface Adapters              β”‚  ← Controllers, Gateways
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚         Application Business Rules      β”‚  ← Use Cases
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚         Enterprise Business Rules       β”‚  ← Entities
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

μ˜μ‘΄μ„± κ·œμΉ™: λ°”κΉ₯ β†’ μ•ˆμͺ½ λ°©ν–₯으둜만 의쑴

Code Style Rules

Early Return Pattern

// ❌ μ€‘μ²©λœ 쑰건문
function process(user) {
  if (user) {
    if (user.isActive) {
      if (user.hasPermission) {
        // do something
      }
    }
  }
}

// βœ… Early Return
function process(user) {
  if (!user) return;
  if (!user.isActive) return;
  if (!user.hasPermission) return;
  // do something
}

Function/File Size Limits

λŒ€μƒκΆŒμž₯μ΅œλŒ€μ‘°μΉ˜
ν•¨μˆ˜30쀄50쀄뢄리
μ»΄ν¬λ„ŒνŠΈ80쀄150쀄뢄리
파일200쀄300쀄λͺ¨λ“ˆν™”

Domain-Specific Naming

// ❌ μ œλ„€λ¦­ 넀이밍
utils/helpers.ts
common/index.ts

// βœ… 도메인 넀이밍
services/OrderCalculator.ts
auth/UserAuthenticator.ts

Library-First Approach

"λͺ¨λ“  μ»€μŠ€ν…€ μ½”λ“œλŠ” μœ μ§€λ³΄μˆ˜, ν…ŒμŠ€νŠΈ, λ¬Έμ„œν™”κ°€ ν•„μš”ν•œ 뢀채닀"

μ½”λ“œ μž‘μ„± μ „ 확인:

  1. npm/yarn νŒ¨ν‚€μ§€ 검색
  2. κΈ°μ‘΄ μ„œλΉ„μŠ€/API 확인
  3. μ˜€ν”ˆμ†ŒμŠ€ μ†”λ£¨μ…˜ κ²€ν† 

Anti-Patterns to Avoid

Anti-Patternλ¬Έμ œμ ν•΄κ²°μ±…
NIH Syndrome바퀴 재발λͺ…λΌμ΄λΈŒλŸ¬λ¦¬ μš°μ„ 
God Classλ„ˆλ¬΄ λ§Žμ€ μ±…μž„SRP 적용
Spaghetti Codeμ–½νžŒ μ˜μ‘΄μ„±λ ˆμ΄μ–΄ 뢄리
Magic Numbers의미 뢈λͺ…ν™•μƒμˆ˜ μΆ”μΆœ
Deep Nesting가독성 μ €ν•˜Early Return

Separation of Concerns

βœ… μ˜¬λ°”λ₯Έ 뢄리
β”œβ”€β”€ domain/          # λΉ„μ¦ˆλ‹ˆμŠ€ 둜직
β”œβ”€β”€ application/     # Use Cases
β”œβ”€β”€ infrastructure/  # DB, API
└── presentation/    # UI, Controllers

❌ 잘λͺ»λœ 뢄리
β”œβ”€β”€ components/
β”‚   └── UserCard.tsx  # UI + API 호좜 + λΉ„μ¦ˆλ‹ˆμŠ€ 둜직 ν˜Όν•©

Decision Checklist

μƒˆλ‘œμš΄ μ½”λ“œ μž‘μ„± μ‹œ:

  • κΈ°μ‘΄ 라이브러리/μ„œλΉ„μŠ€λ‘œ ν•΄κ²° κ°€λŠ₯?
  • 단일 μ±…μž„ 원칙 μ€€μˆ˜?
  • μ˜μ‘΄μ„± λ°©ν–₯ μ˜¬λ°”λ¦„?
  • ν…ŒμŠ€νŠΈ κ°€λŠ₯ν•œ ꡬ쑰?
  • 도메인 넀이밍 μ‚¬μš©?

What ships with it

10.2 KB alongside SKILL.md

GitHub clipped this repository’s file list, so this is at least 1 file and may be more.

Keep looking

Skills are one crate of 327,069. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.