The foundation

The CMS is not the product. It is the proof.

Domma CMS is built on Domma JS, a zero-dependency front-end framework, and Domma Reactive, its reactivity core. Both stand on their own. The CMS is the largest thing anyone has built with them.

Zero dependenciesNo build stepBoth on npm

Dynamic Object Manipulation & Modeling API.

One cohesive package instead of four: jQuery-style DOM handling, Lodash-style utilities, a date library, and a full component set.

$('#el') for selection and manipulation
_ for arrays and objects
D() for dates
S for storage, H for HTTP
E for tabs, accordions, modals, slideovers, toasts, tooltips and context menus
M for reactive models, F for generated forms, T for tables, I for icons

A script tag is the whole installation. No bundler, no transpile, no node_modules on the server.

Say the relationship once.

Write data-bind-text="user.name" in your markup, or computed(() => price.value * qty.value) in code, and it is maintained from then on.

Change the data and exactly the parts of the page that depend on it update. Dependency-tracked, fine-grained bindings: no virtual DOM diff, no re-render to trigger, no update code to write.

It works on a page your server already rendered.

That is the point. You do not hand the browser an empty div and a bundle. The HTML arrives complete, and reactivity attaches to what is already there - which is exactly how the CMS renders a page and then lets its components come alive.


What you get because of this.

One element library

The admin is built from these components. Your public pages render the same ones through shortcodes. Your own Tools get them free, in both their admin screens and their front end.

How it fits →

No build step, anywhere

Not in the CMS, not in your site, not in a Tool. Save a file, refresh the browser. That is a property of the framework, not a shortcut the CMS took.

Nothing to be left holding

Zero third-party dependencies means no transitive supply chain, no dependency audit, and nothing that goes unmaintained and takes your site with it.

The Domma Reactive documentation site, with live examples of data bindings and computed values

The Reactive docs and live demos - itself a Domma CMS site. reactive.dommajs.org

Both are public. domma-js and domma-reactive are on npm and usable in any project, with or without the CMS. If you like how a Domma site behaves, you can have the same behaviour on something else entirely.