← スキル一覧に戻る

architecture
by cemezgin
⭐ 0🍴 0📅 2026年1月17日
SKILL.md
name: architecture description: Clean/hexagonal architecture rules, folder structure, interface ownership, and dependency direction. Use when creating new packages, services, or understanding codebase structure. userInvokable: true
Clean Architecture
References: Examples
Dependency Rule
Dependencies point inward. Outer layers depend on inner, never reverse. Avoid circular dependencies.
| Layer | Contains | Must NOT |
|---|---|---|
| Usecase | Entities, business logic, interfaces, repository | Import transport or apps |
| Driving Adapters (transport) | HTTP handlers, consumers | Contain business logic |
| Driven Adapters (clients) | External API implementations | Import transport or usecase |
Interface Ownership
- Interfaces defined where used, not where implemented
- Each usecase defines only methods it needs (Interface Segregation)
- Interfaces are unexported and private to package
- No
ports/,interfaces/, orcontracts/packages
Folder Structure
| Location | Contains |
|---|---|
cmd/ | Lambda/CLI entrypoints |
config/appconfig/ | Environment configurations |
infra/ | CDK stack + constructs |
internal/<domain>/ | Self-contained bounded contexts (usecase/, repository/, model/) |
internal/clients/ | External API clients + models |
internal/transport/ | HTTP handlers, Kinesis consumers |
internal/apps/ | Dependency wiring |
Package Boundaries
internal/- Private to servicepkg/- Shared utilities for other repos
Domain Structure
Each domain in internal/<domain>/ follows:
<domain>/
├── input.go # Input DTOs
├── output.go # Output DTOs
├── usecase/
│ ├── service.go # Business logic + interfaces
│ └── service_mock.go
├── repository/
│ └── repository.go
└── model/
└── entity.go # Domain entities
スコア
総合スコア
45/100
リポジトリの品質指標に基づく評価
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
○言語
プログラミング言語が設定されている
0/5
○タグ
1つ以上のタグが設定されている
0/5
レビュー
💬
レビュー機能は近日公開予定です