/ product · pages

fifteen page types. Five engines. One tree.

Every page is a first-class citizen of the same workspace tree — a doc next to a board next to a design canvas next to running code.

/ the data engine · 10 views

One source, ten renders. click through them.

Every tab below reads the same twelve records. Switch views and watch the same work recompose — nothing exported, nothing copied.

Q3 Launch12 records · same records in every tab

In progress5

Ship pricing page

Oct 7

Wire signup flow

Oct 9

Refresh brand kit

Oct 8

Press kit outreach

Oct 8

Review3

Draft launch email

Oct 6

QA the mobile beta

Oct 9

Migrate payment plans

Oct 7

Blocked2

Record demo video

Oct 10

Localize onboarding

Oct 11

Done2

Publish changelog

Oct 5

Analytics dashboards

Oct 6

/ the fifteen

Pick a type. The engine is derived.

DocumentRich text, blocks & embedsdocument engine
SlideDecks & slides you presentslide engine
WhiteboardFree canvas — sticky notes, shapes & inkcanvas engine
DesignFrames, components & precise layoutcanvas engine
DashboardCharts & widgets on your datadata engine
ListA vertical list you shape — tasks, notes, anythingdata engine
TableRecords, fields & viewsdata engine
BoardKanban columns & cardsdata engine
CalendarSchedule & agendadata engine
TimelinePhases & milestones over timedata engine
GalleryVisual cards & moodboarddata engine
MatrixCross-tabbed rows & columnsdata engine
ChartA single chart on your datadata engine
FormCollect input into a sourcedata engine
CodeLive HTML — write it, run itcode engine

/ the canvas engine

An infinite canvas with design-grade tools.

Sticky notes, shapes and ink sit on the same canvas as frames with auto-layout, constraints and a layers panel — pixel-true alignment on an infinite stage.

Design exploration
What if the form feeds the board directly?
One source. Ten views.
Frame · Hero v2

/ the code engine

Specs that run. HTML, CSS, JS — live.

A split editor with instant preview and a real console — running prototypes inside the same page tree as your docs and boards.

Signup prototype

const cta = document

.querySelector("#start")

cta.addEventListener(

"click", () => launch())

live preview

Start free

runs in the page — no build

/ start composing

One workspace to rule them all.

/ free forever · no credit card