Skip to content

DomainLangA DSL for Domain-Driven Design

Keep domains, bounded contexts, ownership, and terminology close to the codebase

DomainLang

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

Quick Example

dlang
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 is DomainLang for?

Architects and Tech Leads
Who want lightweight, reviewable DDD models that live in the codebase.

Teams Doing DDD
Who need a shared ubiquitous language documented alongside the code.

Developers
Who want IDE feedback while evolving architecture and domain models.

Released under the Apache 2.0 License.