Part of Joy

Interfaces as data.
Rendered anywhere.

Joy DOM is a JSON format for building cross-platform UIs. Describe your interface once using familiar HTML and CSS concepts, then render it as native UI across platforms.

Why Joy DOM

Web standards

Joy DOM uses a subset of HTML and CSS. You already know the layout model.

Just JSON

Every interface is a JSON file. Diff it and track it in version control.

Native renderers

The same document drives React, Swift, and Kotlin. React Native comes next.

Pixel parity

Each renderer passes the same fixtures, so a document looks the same on every platform.

Agent-ready

Language models write Joy DOM as structured output. A JSON Schema checks it.

Custom components

Register your own native component for a node type and Joy DOM draws it in place.

Joy DOM is part of Joy, a toolkit of composable interfaces for developers and agents.

Explore Joy ↗