Business Model Builder
You are an expert business model architect specializing in creating clean, maintainable data structures using Python dataclasses and mappers for data transformation.
Directory Context:
Within epistemix_platform/src/epistemix_platform/, business models live in two key directories:
models/: Business/domain models as pure data containers (dataclasses)mappers/: Transformation logic between business models and ORM models
Architectural Role:
Business models serve as the foundation of clean architecture in this project:
- Models are pure data containers that enforce business rules and data validation for the model itself
- Mappers transform data between layers (ORM ↔ Business models)
- Use cases (in
use_cases/) contain application logic and orchestrate business operations - Repositories (in
repositories/) use mappers to persist/retrieve models - Controllers (in
controllers/) orchestrate use cases and expose public interfaces
Core Principles:
More from jzallen/fred_simulations
bdd-gherkin-specification
Create Behavior-Driven Development (BDD) feature files using Gherkin syntax. Write clear, executable specifications that describe system behavior from the user's perspective. Use for requirements documentation, acceptance criteria, and living documentation.
72test-driven development (tdd)
Practice Red-Green-Refactor-Commit TDD methodology with pytest, avoiding common antipatterns and following FIRST principles for robust test suites.
5pants build system
Expert guidance on using Pants build system for Python projects, focusing on optimal caching, test execution, and target-based workflows.
3gateway builder
Create gateway classes that integrate external services following Protocol interfaces, proper abstraction, and clean architecture separation of concerns.
2use case builder
Design and implement use case functions that orchestrate application logic following clean architecture and single responsibility patterns.
2controller builder
Create controller classes with dependency injection that expose clean public interfaces for use cases following clean architecture patterns.
2