shepherd 0.1.0
shepherd: ^0.1.0 copied to clipboard
A modular CLI and Dart package for DDD project management, with domain health analysis, owner management, YAML export, and changelog automation.
0.1.0 - 2025-07-21 #
- Fixed and unified the format for
user_active.yamlacross all flows (init, pull, etc): now always writes the full user object (id, first_name, last_name, email, type, github_username) for consistent CLI experience. - Shepherd pull now uses the same user writing logic as shepherd init, preventing display bugs and ensuring correct active user info.
- Refactored and cleaned up code in
pull_command.dart,edit_person_controller.dart,config_menu.dart, andshepherd_database.dartfor maintainability and internationalization. - Minor bug fixes and code cleanup.
0.0.9 - 2025-07-20 #
- About command: now displays author, homepage, repository, and docs as clickable links (OSC 8 hyperlinks) and uses centralized ANSI color constants for a visually improved output.
- All CLI colors and styles are now managed via
AnsiColorsfor consistency. - Version updated to 0.0.9 in all READMEs.
- Improved about command layout and border for a more professional look.
- Removed deprecated
author/authorsfields from pubspec.yaml, author is now hardcoded in about. - README, README.pt-br.md, and README.es.md updated to reference version 0.0.9.
- Minor bug fixes and code cleanup.
0.0.8 - 2025-07-20 #
- Visual improvements to the Analyze domains command: clearer layout, domain information shown first, better separation and readability.
- Fixed a bug in Shepherd init where the domain was not created before owner registration, causing "Domain does not exist" errors when adding owners during initialization. Now the domain is created immediately after entering its name.
0.0.7 - 2025-07-20 #
dart formaton the entire project.- change the changelog display format
0.0.6 - 2025-07-20 #
- Data layer refactor:
- Moved
ShepherdDatabasetolib/src/data/datasources/local/shepherd_database.dartto follow Clean Architecture conventions for local datasources. - Updated all imports across the project to use the new path for
ShepherdDatabase.
- Moved
- CLI and menu improvements:
- Modularized the project initialization flow (
shepherd init) into smaller files: domain prompt, owner prompt, repo type prompt, GitHub username prompt, and summary. - Improved code organization in the presentation layer for easier maintenance and testing.
- Main menu and all submenus now follow Dart CLI standards, with improved color and ASCII art.
- The 'Init' option was removed from the main menu (now only available via
shepherd init). - All submenus now support both '0. Exit' and '9. Back to main menu'.
- The active user is now displayed and persisted.
- Domains menu: now lists available domains for user story/task management, and prevents adding owners to non-existent domains.
- User stories/tasks: when creating a user story, the user can select one or more domains (comma separated) or leave blank for ALL; prompt is only shown at the right moment.
- Removed redundant prompts for domain selection in user story flow.
- Modularized the project initialization flow (
- Bug fixes and polish:
- Fixed type safety in repo type prompt to ensure non-nullable return.
- Removed unused imports and improved error handling in prompts.
- All comments and user-facing strings are now in English for pub.dev compliance.
- Prevented adding owners to non-existent domains.
- Improved validation and user experience in all prompts (cancel/return, empty input, etc).
- Documentation:
- Updated code comments and documentation for clarity and maintainability.
- Added guidance on folder structure for datasources (local/remote) in Clean Architecture.
- Updated changelog to reflect all recent CLI and UX improvements.
0.0.5 - 2025-07-18 #
- Refactored command structure:
- All CLI commands are now centralized in
lib/src/presentation/commands/commands.dartfor easier import and maintenance. - Removed the
cli_helpers.dartfile, making the structure cleaner. - Updated command imports in
bin/shepherd.dartto use onlycommands.dart.
- All CLI commands are now centralized in
- Export file updates:
- The
lib/shepherd.dartfile now exports onlycommands.dartto centralize command access, while keeping entity and service exports.
- The
- README updates:
- Package usage example updated in English, Portuguese, and Spanish READMEs to reflect the new command export centralization.
- Imports in examples are now simplified and aligned with the new structure.
- Improved code organization and modularization, following Clean Architecture and best practices for pub.dev publication.
0.0.4 - 2025-07-18 #
- Added platform support section to README in English, Portuguese, and Spanish, clarifying that the package is intended for CLI/desktop/server use and does not support Web or WASM (due to dart:io).
- Updated dependencies in pubspec.yaml.
0.0.3 - 2025-07-18 #
- Dart format applied
0.0.2 - 2025-07-18 #
- Provide home page and documentation
0.0.1 - 2025-07-18 #
- Initial release: CLI and package for DDD project management in Dart/Flutter
- Uses a local SQLite database (via sqflite_ffi) for persistent storage of domains, owners, and related data. No external server required.
- Domain health analysis, owner management, YAML export, and cleaning automation
- Interactive CLI and programmatic API
- Owner type field is now standardized across all flows (domain config and add-owner) using a single allowed list: administrator, developer, lead_domain. Prevents inconsistent or duplicate owner types.