Shepherd

A powerful Dart/Flutter CLI and package for managing Domain Driven Design (DDD) projects

Features

๐Ÿฉบ

Domain Health Analysis

Perform detailed analysis of your DDD project's domain health and structure directly via CLI.

๐Ÿงน

Automated Cleaning

Effortlessly clean and optimize multiple microfrontends (multi-packages) with a single command.

๐Ÿ“Š

YAML Export & Versioning

Export domains and owners to versionable YAML, ready for CI/CD integration and team collaboration.

๐Ÿง‘โ€๐Ÿ’ป

Owner Management

Assign and manage responsible owners for each domain within your project interactively.

โš™๏ธ

CLI & Package Integration

Seamlessly use Shepherd as a powerful command-line tool or integrate it programmatically into your Dart applications.

๐Ÿ“

Changelog Automation

Automatically update your CHANGELOG.md and archive historical entries for organized version control.

Installation

Add Shepherd to your Dart/Flutter project's dependencies:

dependencies: shepherd: ^0.2.9

Or install globally to use the CLI:

dart pub global activate shepherd

Then run dart pub get

CLI Usage

Get started with Shepherd CLI in just a few commands:

# Analyze project domains shepherd analyze # Clean all projects/microfrontends shepherd clean # Configure domains and owners (interactive) shepherd config