What problem does it solve?
Provides a practical guide for architecting Python applications by applying the functional-core/imperative-shell pattern and Pydantic patterns, helping teams design scalable, maintainable codebases.
Core Features & Use Cases
- Functional Core (Business Logic): emphasize pure functions, validated inputs, testability, and minimal side effects.
- Imperative Shell (External World): coordinates IO, enforces boundaries, and orchestrates domain components.
- Pydantic Patterns: define immutable Value Objects and clear Request/Response models to validate and translate inputs to domain concepts.
- Hexagonal Architecture Guidance: organize code with ports/adapters, enabling plug-and-play infrastructure.
- Type Safety & Best Practices: modern typing, explicit return types, top-level imports, and self/cls annotations for clarity.
- Documentation & Quality: emphasizes self-documenting code, avoid anti-patterns, and maintainable design.
Quick Start
Apply the architectural patterns to a Python module by separating domain logic from IO and wiring components through ports and adapters.