Heavy development — not production ready. The language, APIs, and wdoc output can change at any time without notice.
Typed configuration & schema language
One language for every shape of data.
WCL lets you express structured data the way it actually is — records, unions, interfaces, and decorators — gather it into a document model that validates itself, then project that single model into config, HTML, Markdown, books, and Claude skills.
@block("service")
typeService {
@inline(0) name: utf8// service "web" → name = "web"@default(80) port: u32
region: utf8
}
@documenttypeConfig {
@children("service") services: list<Service>
}
service"web" {
region = "us-east-1"
}
service"api" {
port = 9090u32
region = "eu-west-1"
}
A taste
A document is fields and blocks. A schema is the rules they follow.
Declare your types with decorators that describe how raw syntax maps onto them — @inline, @default, @children. The data on the right reads like the thing it describes, and the document model validates the whole shape before anything downstream sees it.
Why WCL
Built to express data naturally — and keep it honest.
A small, typed core that scales from a single config file to a complete documented model.
Flexible structure
Map almost any data structure with a statically typed core — records, vectors and tensors, union types, interfaces, and decorators that bind surface syntax to your model. Express the shapes you actually have, checked before runtime.
Schemas
Declare a schema once and easily validate your data against it — types, required fields, and constraints all checked, so mistakes surface before anything downstream runs.
Natural, block-based syntax
Blocks and fields read like the thing you're describing — service "web" { … } — not a wall of nested brackets.
One format, multiple uses
The same WCL format is equally at home as typed application configuration and as the source for documentation — pages, sites, books, and Claude skills rendered with wdoc.
Data–presentation separation
Keep your data model separate from how it's shown. Project the same typed data structures into documentation — many views and layouts over one validated source, with no copy-paste.
Rich diagram support
wdoc draws diagrams straight from WCL — flowcharts, sequence and state diagrams, charts, timelines, trees, and class/DB tables — with automatic layout and edge routing, themed to match the page.
Reference
The manuals
Each reference is published as a wskill — a self-contained WCL model projected into both a readable book and a Claude Code skill.