The Document Driven Development Kit (DDDK) is here to revolutionize the way you build software! Say goodbye to chaotic workflows and hello to a streamlined, documentation-first approach that keeps your team aligned and your projects on track.
- Modern features for documentation-driven development: Templates, CLI tools, and automation to make your life easier.
- Always connected: Keep your documentation and development in perfect harmony.
- Cross-platform: Whether you're on Windows, macOS, or Linux, we've got you covered.
- Responsive interface: Designed to look and feel amazing on any device.
- Synchronized experience: Pick up right where you left off, no matter where you are.
To dive deeper into the magic of DDDK, check out our documentation.
This repository is organized into clear domains to make navigation intuitive:
ddd-kit/
βββ toolkit/ # CLI tool source code and builds
βββ reference/ # Standards, tech guides, and validation schemas
β βββ standards/ # Process standards and best practices
β βββ tech/ # Technology-specific implementation guides
β βββ schemas/ # JSON validation schemas
βββ docs/ # DDDK usage documentation and guides
βββ examples/ # Example projects and workflows
βββ scripts/ # Development and build utilities
- Want to use the toolkit? β Start with installation below, see toolkit/ for code
- Need reference materials? β Browse reference/ for standards and tech guides
- Learning DDDK? β Check out docs/ for guides and documentation
- Want examples? β See examples/ for sample projects
Clone the repository and install dependencies:
git clone https://github.com/Coderrob/ddd-kit.git
cd ddd-kit
npm install
npm run buildRun the CLI:
npm run cli -- --helpWant to live on the edge? Run the latest codebase:
git clone https://github.com/Coderrob/ddd-kit.git
cd ddd-kit
npm install
npm run build
npm run cli -- --helpFollow the instructions above to run the toolkit from source. Before contributing, make sure to:
- Run
npm testto ensure your changes meet our quality standards. - Use
npm run devfor development with TypeScript compilation. - Use
npm run buildto compile TypeScript to JavaScript.
To avoid committing files that fail linting, git hooks are automatically installed:
npm install # Installs husky pre-commit hooks automaticallyThe Document Driven Development Kit comes with a powerful CLI (dddctl) to supercharge your workflow. Here's what you can do:
The CLI provides task management, validation, and development workflow commands.
npm run cli -- <command> [options]Or if installed globally:
dddctl <command> [options]-
next: Hydrate the next eligible task for processing.Example:
npm run cli -- next
-
render: Re-render guidance for a specific task.Example:
npm run cli -- render <task-id>
-
supersede: Supersede an old UID with a new one.Example:
npm run cli -- supersede <old-uid> <new-uid>
The Document Driven Development Kit CLI provides the following commands and sub-commands:
List all tasks in the TODO.md file.
Example:
npm run cli -- task listShow details of a specific task by ID.
Example:
npm run cli -- task show <task-id>Mark a task as complete.
Example:
npm run cli -- task complete <task-id>Add a new task from a file.
Example:
npm run cli -- task add <file-path>Validate all tasks against the schema.
Example:
npm run cli -- validate tasksValidate tasks and optionally fix issues.
Example:
npm run cli -- validate fixAudit references across repository and tasks.
Example:
npm run cli -- ref audit-
-V, --version: Display the version number.Example:
npm run cli -- --version
-
-h, --help: Display help information for any command.Example:
npm run cli -- task --help
For a full list of commands and options, run:
npm run cli -- --helpThe project includes several npm scripts for development and validation:
-
Quick Validation: Use the lightweight validation script for faster feedback:
npm run validate-local
This provides the same validation as
npm run cli -- validate tasksbut with simpler output and faster execution.
-
Linting: Check and fix code style issues:
npm run lint # Check for issues npm run lint:fix # Fix issues automatically
-
Formatting: Format code with Prettier:
npm run format # Format all files npm run format:check # Check formatting
-
Build: Compile TypeScript to JavaScript:
npm run build
-
Development: Run CLI directly from TypeScript source:
npm run dev # Equivalent to ts-node src/cli.ts -
Testing: Run the test suite:
npm test
This project is licensed under the terms of the GPL v3 open source license. See the LICENSE file for details.
