Shepherd
A tool and package to manage DDD (Domain Driven Design) projects in Dart/Flutter, with domain health analysis, cleaning automation, YAML export, and CLI integration.
1. Setup & Onboarding
Quick Start
Simply run shepherd to start. It detects configuration and guides you through
setup.
Setup Modes
Choose between Automation Only for CI/CD or Full Setup for complete DDD management.
Direct Init
Use shepherd init to sync with your team's existing domains and start working
immediately.
2. Automation & CI/CD
Deep Cleaning
Run shepherd clean to clean all microfrontends at once. Ideal for monorepos.
Automatic Changelog
Smartly generates entries for feature branches and merges them for release branches.
Deployment Pipeline
shepherd deploy handles version bumping, changelog generation, and PR creation.
3. DDD & Project Management Alpha
Domain Health Analysis
shepherd analyze checks for architectural violations and structure issues.
Configuration & Owners
Manage domain owners interactively or via CLI commands like add-owner.
Persistence
Export your domain structure to devops/domains.yaml for version control.
Installation
CLI (Recommended)
Install globally to use the CLI:
Package
Add to your pubspec.yaml to use as a package:
Then run dart pub get