Skip to content

CraftDomain-Driven Architecture Language

Model business use cases and domain interactions with powerful visualization capabilities

Quick Example ​

craft
// Define your services
services {
  OrderService {
    contexts: Order, Payment
    language: nodejs
    data-stores: order_db
    deployment: canary(50% -> staging, 100% -> production)
  }
}

// Model business use cases
use_case "Order Placement" {
  when Customer places order
    Order validates product availability
    Order asks Inventory to reserve items
    Order creates payment request
    Order notifies "Order Created"

  when Payment listens "Order Created"
    Payment processes transaction
    Payment notifies "Payment Processed"
}

Why Craft? ​

Traditional architecture documentation is often disconnected from code, quickly becomes outdated, and requires specialized tools.

Craft provides a simple DSL that lives with your code, generates diagrams automatically, and makes architecture visible and maintainable.

Get Started in 3 Steps ​

  1. Install the VSCode extension from the marketplace
  2. Create a .craft file and start modeling your domains
  3. Press Ctrl+Shift+C to preview your architecture diagram

Read the full guide →

Released under the MIT License.