SemaJSX

A lightweight, signal-based reactive JSX runtime. Fine-grained updates. No virtual DOM.

Why SemaJSX?

Simple primitives. Powerful results.

Fine-Grained Reactivity

Signals automatically track dependencies and update only what changed. No virtual DOM diffing overhead.

Modular Architecture

Choose what you need: DOM rendering, Terminal UI, SSR, or SSG. All sharing the same reactive core.

Type-Safe

Full TypeScript support with comprehensive type inference and IDE autocompletion out of the box.

Flexible Styling

Modular CSS with @semajsx/style, tree-shakeable Tailwind utilities, and signal-reactive themes.

Multi-Target

Render to the browser DOM or the terminal. Same JSX, same signals, different targets.

SSR & SSG

Island architecture for SSR. Static site generation with MDX, collections, and incremental builds.