For Builders

Build at light speed. Hand over without it breaking.

For agencies, developers and technical teams. Every page is structured, schema-validated content — so it can be written by hand, drafted by an agent, kept in version control and synced to any site running Lean CMS.

The content model

A page is data, not markup

Each page is a JSON document: an ordered list of sections, each with a type and named fields. Brand, theme settings and menus are files too.

Portable. Plain JSON moves between sites, environments and repositories without an export step.

Validated. Every section is checked against its schema before it reaches a live site. A malformed page is rejected, not half-rendered.

Reviewable. A change to a page is a diff you can read, in a pull request or side by side in the editor.

Clean output. Sections render their own scoped styles and load them only where used. No shortcodes, no nested wrappers.

What a page looks like

{
  "slug": "enrolments",
  "title": "Enrolments",
  "blocks": [
    {
      "block": "hero",
      "data": {
        "heading": "Enrolments for 2027",
        "subheading": "Applications open 1 February."
      }
    },
    {
      "block": "steps",
      "data": {
        "steps": [
          { "title": "Book a tour" },
          { "title": "Apply online" },
          { "title": "Interview" }
        ]
      }
    }
  ]
}

Simplified. The full format is documented in the guide.

The tools

Agent-assisted authoring

Because pages are schema-validated data, an agent can draft a whole page and anything invalid is rejected before it syncs. Agent changes can be held for a person to approve. Every page is also served as Markdown, with a site-wide llms.txt.

Sync from files

Publish pages, brand settings and menus from version-controlled files. Sync merges section by section and flags a conflict instead of overwriting an edit made on the site.

Globals

Build a section — or a group of them — once, reuse it across the site, and edit it in one place. Insert a detached copy when a page needs its own version.

Versions, history and compare

Draft a change without touching the live page, promote it when it is right, roll back to any earlier version, and compare two versions side by side. Works for site-wide brand settings as well as pages.

Scheduling

Queue a change to go live at a set time, and edit or cancel it until then. Pending changes are visible across the site, not buried in one page.

Notes

Structured notes on a page or a single section, with a status — to fix, idea, done, approved. People and agents work from the same list, so feedback does not live in someone's inbox.

Fits the sites you already have

Adopt it one page at a time

Installed, it does nothing. Keep the client's theme and page builder; convert one page, build it privately, compare it with the live version, and swap when it is right. Every step can be undone.

That makes it a practical way into an inherited site — not a rebuild quote.

Running more than one site?

A git-based workflow, command-line tools and automated content delivery across a fleet of sites all exist and are in use. They are quoted per situation rather than listed, because agency arrangements differ too much for one price to be honest.

Simplify your approach and get lean

Drop inefficiencies and speed up your publishing workflows, whether you run a simple brochure site or manage an entire ecosystem. We can set up a demo to show you how a few powerful tools can save your time and patience.