Alpha: Ships on npm at 7.0.0-alpha.07.0.0-alpha.0

Introduction

mdxui renders a bounded JSON record as a page under any Theme.

View as JSON

An agent or a person writes the record. Section types, drawn once by hand, lay it out, and a Theme paints it in one Business's Brand. The Harbor tides landing, one record under two Themes:

From Harbor tides › homequaypointOpen the frame

Choose a path

PathYou haveStartYou leave with
BuildA project directoryQuickstartOne record as two HTML files, under two Themes
AgentA coding agentFor agentsA record the agent wrote that parses, and two renders
BrandA Brand's colors and typefacesWrite a ThemeYour client's Theme, rendering every record
ShipRecords that parseShip a SiteA live Site with its 404 page and sitemap

For a client site, take them in order: Quickstart (5 minutes), Write a Theme (an afternoon), Ship a Site (one deploy). Start from the record closest to your page:

curl -O https://next.mdxui.dev/pages/harbor/home.json

What a record holds

A Page is a JSON record of strings, counts and names from closed sets, with no markup, class names or CSS. Every string has a bound, so a record renders as drawn or names the field to shorten.

Bounds to plan around

  • A brand is a text wordmark of up to 16 characters, or one of the 52 icon marks.
  • Section types hold text, code and icons; no field holds a picture.
  • renderPage takes the 5 bundled Themes; render takes yours.
  • ship.ts builds the whole Site.
  • A string over its bound is refused, never wrapped.
  • Apps are coming.

The packages

@mdxui/site holds the schema, the renderer and the Section types; @mdxui/themes holds the Theme contract and the 5 Themes. Packages and versions pins both.

Where the definitions live

startupbuilder.dev defines the Site, Page, Theme, Template and Component. These docs show how mdxui renders each one.

The Start guides

Run Quickstart first. Ship a Site runs beside Write a Theme in the same project.

PageResult
QuickstartOne Page record as two HTML files under two Themes, and one refusal read
Ship a SiteEvery record in pages/ as one Site under one Theme, with its 404, sitemap and robots file, served from Cloudflare
For agentsThe prompt an agent runs to write a record that parses
Packages and versionsThe pinned pair to install, and what each dist-tag points at

On this page