[data-reveal]{opacity:1!important;transform:none!important}
Introduction
Builder

Introduction

Edit the pages, tables and data sources of a DMS project from the dashboard, with every change written as TypeScript that compiles.

@antelopejs/dms-builder turns any DMS page into an editor. Press Edit this page (Ctrl B) to turn the page you are looking at into a canvas.

Add a card, change its title and save: the page updates, and the corresponding TypeScript changes appear in your project. You can then connect the card to data or arrange it alongside other blocks.

Try one change

With the builder installed, sign in as a tenant owner and open an existing page.

  1. Click Edit this page and select a card on the canvas.
  2. Change its title in Content. The canvas shows your draft, not a saved page.
  3. Click the unsaved-change count to review the edit, then Save.
  4. Click Done. The page now shows the new title; review the source diff before committing it.

For this first edit, leave Tables and the menu unchanged: their edits save immediately and are not undone by discarding a page draft.

What it brings

Page editor

The catalog, the layers, the live canvas and the inspector, with undo, redo and a draft kept on your device.

Pages and menu

Create pages from a layout, arrange the menu and its categories.

Tables

Create tables with their fields and API, and see which pages read them.

Data sources

Give a chart or a KPI its numbers without writing a route.

Save, review and access

The change list, the checks run on save, and who sees each block.

How it works

The builder has no database of pages. It reads the structures in your sources:

StructureSource representation
PageA PageController class
BlockOne of the page's static fields or a .child() of another block
TableA Table, a DataController and a model

For each edit, the builder:

  1. Parses those files.
  2. Applies the edit as an AST rewrite.
  3. Typechecks the whole project in memory.
  4. Writes the files only when the result compiles.

Hand-written code and builder-written code are the same code: you can keep editing either way.

It exposes two surfaces:

The builder rewrites source files, so it is enabled by default only in development (ajs project dev, with or without -w). A built deployment (ajs project start) has no builder routes or Edit this page button unless you force it with api.enabled.

Who can use it

Every builder route requires an authenticated tenant owner.

Works with the AI assistant

When @antelopejs/dms-ai is loaded with the builder, the assistant edits pages through the same operations, in Safe mode by default: it changes the project only through the builder, so every change is typechecked and can be undone.