Skip to content

Commit 0969816

Browse files
committed
Update README.md
1 parent a05ed7d commit 0969816

1 file changed

Lines changed: 54 additions & 72 deletions

File tree

README.md

Lines changed: 54 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -214,81 +214,63 @@ class OrderStatus(StrEnum):
214214
215215
## What's Inside
216216
217-
```
217+
```text
218218
python-clean-architecture/
219219
├── .claude-plugin/
220-
│ ├── plugin.json Plugin manifest
221-
│ └── marketplace.json Marketplace catalog
222-
├── README.md This file
223-
├── LICENSE MIT license
220+
│ ├── plugin.json
221+
│ └── marketplace.json
222+
├── README.md
223+
├── LICENSE
224224
├── commands/
225-
│ ├── review-architecture.md Full architecture review
226-
│ ├── review-api-design.md Review REST API conventions
227-
│ ├── check-quality.md Quick 22-rule quality check
228-
│ ├── suggest-patterns.md Recommend Pythonic patterns
229-
│ ├── decouple.md Find coupling, suggest DI
230-
│ ├── make-pythonic.md Refactor to Pythonic patterns
231-
│ ├── extract-god-class.md Split god classes
232-
│ ├── scaffold-api.md Generate FastAPI project
233-
│ ├── scaffold-tests.md Generate stub-based tests
234-
│ └── add-endpoint.md Scaffold endpoint across layers
235-
└── skills/
236-
└── clean-architecture/
237-
├── SKILL.md Core skill (loaded when triggered)
238-
├── references/
239-
│ ├── design-principles.md 7 principles with refactoring recipes
240-
│ ├── layered-architecture.md 3-layer FastAPI guide with full code
241-
│ ├── testable-api.md Stub-based testing strategy
242-
│ ├── testing-advanced.md Pytest, property-based, stateful testing
243-
│ ├── rest-api-design.md HTTP methods, status codes, OpenAPI
244-
│ ├── code-quality.md 22 rules + code review checklist
245-
│ ├── classes-and-dataclasses.md Classes vs dataclasses decision guide
246-
│ ├── function-design.md Pure functions, closures, partial, HOFs
247-
│ ├── data-structures.md Choosing the right data structure
248-
│ ├── error-handling.md Custom exceptions, context managers
249-
│ ├── monadic-error-handling.md Railway-oriented Result types
250-
│ ├── types-and-type-hints.md Python's type system, Callable types
251-
│ ├── project-organization.md Modules, packages, folder structure
252-
│ ├── context-managers.md __enter__/__exit__, @contextmanager
253-
│ ├── decorators.md Retry, logging, timing, parameterized
254-
│ ├── async-patterns.md Async/await, gather, TaskGroup
255-
│ ├── pydantic-validation.md Pydantic v2 validators, ConfigDict
256-
│ ├── pattern-matching.md match/case structural patterns
257-
│ ├── grasp-principles.md GRASP: 9 principles for responsibility assignment
258-
│ ├── domain-driven-design.md DDD: domain models, ubiquitous language
259-
│ ├── pythonic-patterns.md Quick reference for all 25 patterns
260-
│ └── patterns/
261-
│ ├── strategy.md Full OOP → functional progression
262-
│ ├── abstract-factory.md Tuples of functions + partial
263-
│ ├── bridge.md Bound methods, when to stop
264-
│ ├── command.md Undo closures, batch commands
265-
│ ├── notification.md Observer → Mediator → Pub/Sub
266-
│ ├── registry.md Dict mapping, importlib plugins
267-
│ ├── template-method.md Free function + Protocol
268-
│ ├── pipeline.md Chain of Responsibility, compose
269-
│ ├── functional.md Callback, Wrapper, Builder
270-
│ ├── value-objects.md Validated domain primitives
271-
│ ├── event-sourcing.md Immutable events, projections
272-
│ ├── cqrs.md Separate read/write models
273-
│ ├── builder.md Fluent API, frozen product
274-
│ ├── unit-of-work.md Transaction context managers
275-
│ ├── singleton.md Module-level instance, metaclass
276-
│ ├── state.md Protocol-based state objects
277-
│ ├── adapter.md Composition + partial adaptation
278-
│ ├── facade.md Simplified subsystem interface
279-
│ ├── repository.md Separating storage from access
280-
│ ├── fluent-interface.md Method chaining, domain verbs
281-
│ ├── retry.md Exponential backoff decorator
282-
│ ├── lazy-loading.md cache, cached_property, generators
283-
│ └── plugin-architecture.md Config-driven, importlib discovery
284-
└── examples/
285-
└── fastapi-hotel-api/ Complete working FastAPI project
286-
├── main.py
287-
├── models/ Pydantic models + DataInterface Protocol
288-
├── operations/ Business logic (accepts Protocol)
289-
├── routers/ API endpoints (composition root)
290-
└── db/ SQLAlchemy + generic DBInterface
291-
225+
│ ├── review-architecture.md
226+
│ ├── review-api-design.md
227+
│ ├── check-quality.md
228+
│ ├── suggest-patterns.md
229+
│ ├── decouple.md
230+
│ ├── make-pythonic.md
231+
│ ├── extract-god-class.md
232+
│ ├── scaffold-api.md
233+
│ ├── scaffold-tests.md
234+
│ └── add-endpoint.md
235+
└── skills/clean-architecture/
236+
├── SKILL.md
237+
├── references/
238+
│ ├── design-principles.md
239+
│ ├── layered-architecture.md
240+
│ ├── testable-api.md
241+
│ ├── testing-advanced.md
242+
│ ├── rest-api-design.md
243+
│ ├── code-quality.md
244+
│ ├── classes-and-dataclasses.md
245+
│ ├── function-design.md
246+
│ ├── data-structures.md
247+
│ ├── error-handling.md
248+
│ ├── monadic-error-handling.md
249+
│ ├── types-and-type-hints.md
250+
│ ├── project-organization.md
251+
│ ├── context-managers.md
252+
│ ├── decorators.md
253+
│ ├── async-patterns.md
254+
│ ├── pydantic-validation.md
255+
│ ├── pattern-matching.md
256+
│ ├── grasp-principles.md
257+
│ ├── domain-driven-design.md
258+
│ ├── pythonic-patterns.md
259+
│ └── patterns/ (25 pattern files)
260+
│ ├── strategy.md
261+
│ ├── registry.md
262+
│ ├── command.md
263+
│ ├── builder.md
264+
│ ├── repository.md
265+
│ ├── cqrs.md
266+
│ └── ...
267+
└── examples/
268+
└── fastapi-hotel-api/
269+
├── main.py
270+
├── models/
271+
├── operations/
272+
├── routers/
273+
└── db/
292274
```
293275

294276
## Key Concepts

0 commit comments

Comments
 (0)