Skip to content

Coderrob/ddd-kit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

4 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Document Driven Development Kit

Document Driven Development Kit

Welcome to the Future of Development πŸš€

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.

GitHub


Why You'll Love DDDK ❀️

  • 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.


Repository Structure πŸ“

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

Quick Navigation

  • 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

Get Started in Minutes ⏱️

Running Stable Releases

Clone the repository and install dependencies:

git clone https://github.com/Coderrob/ddd-kit.git
cd ddd-kit
npm install
npm run build

Run the CLI:

npm run cli -- --help

Running from Source

Want 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 -- --help

⚠️ Note: The development version is cutting-edge but may not be production-ready. Use at your own risk!


Development Setup πŸ› οΈ

Follow the instructions above to run the toolkit from source. Before contributing, make sure to:

  • Run npm test to ensure your changes meet our quality standards.
  • Use npm run dev for development with TypeScript compilation.
  • Use npm run build to compile TypeScript to JavaScript.

To avoid committing files that fail linting, git hooks are automatically installed:

npm install  # Installs husky pre-commit hooks automatically

Command Line Interface (CLI) ⚑

The Document Driven Development Kit comes with a powerful CLI (dddctl) to supercharge your workflow. Here's what you can do:

CLI Usage

The CLI provides task management, validation, and development workflow commands.

Usage

npm run cli -- <command> [options]

Or if installed globally:

dddctl <command> [options]

Commands

  • 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>

CLI Commands and Sub-Commands

The Document Driven Development Kit CLI provides the following commands and sub-commands:

task list

List all tasks in the TODO.md file.

Example:

npm run cli -- task list

task show

Show details of a specific task by ID.

Example:

npm run cli -- task show <task-id>

task complete

Mark a task as complete.

Example:

npm run cli -- task complete <task-id>

task add

Add a new task from a file.

Example:

npm run cli -- task add <file-path>

validate tasks

Validate all tasks against the schema.

Example:

npm run cli -- validate tasks

validate fix

Validate tasks and optionally fix issues.

Example:

npm run cli -- validate fix

ref audit

Audit references across repository and tasks.

Example:

npm run cli -- ref audit

Options

  • -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 -- --help

Development Scripts πŸ› οΈ

The project includes several npm scripts for development and validation:

Task 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 tasks but with simpler output and faster execution.

Code Quality

  • 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

Additional Links πŸ”—


License πŸ“œ

This project is licensed under the terms of the GPL v3 open source license. See the LICENSE file for details.

About

Document Driven Development Kit

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •