Declarative Amsterdam

Presentations and tutorials

Active filters:

CEM-ML declarative document lifecycle engine

CEM-ML is a declarative document lifecycle engine for structured content. It reads sources such as CEM-ML, CSV, JSON, YAML, CSS, and the HTML/XML family into typed, source-map-bearing AST/event streams; validates them against schema-package contracts; and then converts, transforms, formats, colors, or renders them through the same pipeline.

The project has two authoring layers. The core runtime is written in Rust and builds as a Linux-native CLI and as WebAssembly for browser hosts. The domain contracts are declarative: schemas, package manifests, formatter/colorizer resources, and transform templates are authored as CEM-ML and CEMT package assets rather than hard-coded as format-pair shortcuts.

For command-line users, cem-ml provides validation, conversion, transform graph execution, reports, terminal output, and HTML/SVG previews. For browser users, the same engine exposes an async WASM API used by Declarative Custom Element (<custom-element>) and the planned <cem-element> substrate, so declarative components can parse data, run transformations, and render light DOM without moving the document semantics into handwritten JavaScript.

Presentation, 12 November 2026

Sasha Firsov is a software architect and open-source developer focused on declarative web architecture. For more than a decade, he has been pursuing the change of web stack towards evolutionary architecture, beginning with JavaScript application containers and Declarative Custom Elements, continuing with CEM-ML, and moving toward Embeddable Progressive Applications. As part of this work, he participates in the W3C Web Components Community Group and the XQuery and XSLT Extensions Community Group, and contributes to WHATWG HTML discussions.

background Layer 1 jbe-platform.quadraat-sans-bold prag Twitter_Logo_Blue