One source of truth
The .koi file is the ubiquitous language. Doc comments, invariants, and the glossary travel with the model — no drift between the docs and the code.
Κοινή · the common tongue of your domain
Koine is a domain-specific language for Domain-Driven Design. Describe a bounded context in a small, readable DSL — Koine generates the idiomatic, boilerplate-heavy C# for you.
No install. The compiler runs in your browser.
Edit the model. It compiles in your browser the moment you stop typing.
Want the full IDE — glossary, context map, hover docs, and go-to-definition, all in the browser?Open Koine Studio ▸
The .koi file is the ubiquitous language. Doc comments, invariants, and the glossary travel with the model — no drift between the docs and the code.
Value objects, entities, aggregates, commands, events, state machines, repositories, CQRS, context maps, versioning — tactical and strategic, all shipped.
Every emitted type is snapshot- and compile-tested. The output is idiomatic, dependency-free C# you can read, review, and check into git.
From value objects to context maps to multi-language output — the tactical and strategic building blocks of Domain-Driven Design, all shipped. See thefull feature catalogue.
Value objects, optionals, sets & maps, smart enums that carry data, quantities with unit-checked arithmetic, ranges, derived fields, and regex & conditional invariants.
Commands with preconditions, domain events that record intent, state machines with guarded transitions, and named factories.
Reusable specifications, stateless domain & application services, and reactive policies.
Identity strategies, repositories with finders, optimistic concurrency, unit of work, read models, and CQRS queries.
Multi-file models, imports & modules, context maps, shared kernel / anti-corruption layers, and integration events.
Model versioning, @since / @deprecated annotations, and breaking-change detection.
Idiomatic C#, TypeScript, Python, PHP, Rust, and Java — each with an honest maturity level.
Diagnostics & doc comments, an LSP, a formatter, init scaffolding, watch mode, and coverage that proves every declaration emits.