Skip to content

larsbaunwall/DomainLang

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

302 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DomainLang Logo

A DSL for Domain Driven Design

Build VS Marketplace

Warning

🚧 Prerelease Software — DomainLang is in active development and has not reached v1.0 yet. The language syntax and tooling may change. We welcome feedback and contributions—see the roadmap for planned features.

A small DSL for Domain-Driven Design (DDD) architecture models, with first-class IDE support.

Use DomainLang to keep domains, bounded contexts, ownership, terminology, and context maps close to the codebase (and easy to review in pull requests).

DomainLang CLI

Quick start

  1. Install the VS Code extension: https://marketplace.visualstudio.com/items?itemName=thinkability.domain-lang
  2. Create a .dlang file and start modeling.
  3. Use the docs hub for the learning path: dsl/domain-lang/docs/README.md
Classification CoreDomain
Team SalesTeam

Domain Sales {
    description: "Revenue generation and customer acquisition"
    vision: "Make it easy to buy"
}

bc Orders for Sales as CoreDomain by SalesTeam {
    description: "Order lifecycle and orchestration"

    terminology {
        term Order: "A customer's request to purchase"
    }
}

ContextMap SalesLandscape {
    contains Orders
}

Who this is for

  • Architects and tech leads who want lightweight, reviewable DDD models
  • Teams doing DDD who need a shared ubiquitous language in the repo
  • Developers who want IDE feedback while evolving architecture

What you get

  • A DDD-aligned language for architecture models
  • VS Code support (syntax highlighting, completion, hover, go-to-definition)
  • Validation to catch common modeling issues early
  • Model Query SDK for analysis and automation

Documentation

Build from source

Development uses Node.js 20 (Volta is configured).

cd dsl/domain-lang
npm install
npm run langium:generate
npm run build
npm test

Contributing and feedback

Ideas, bug reports, and pull requests are welcome.

License

Apache 2.0 (see LICENSE)

About

A DSL for Domain-Driven Design

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published

Contributors 2

  •  
  •