Page Builder & Design Library
Every page is rows and items you edit in place
Open a page and click a row. The sidebar shows exactly what that row holds: headings, body text, images, buttons and links. Change the copy, swap an image, pick a section preset, adjust the spacing or add a class. The preview updates as you work.
Each row is made of items: a heading, a paragraph, an image, a button. Add, duplicate, reorder or remove them from the same sidebar, and pull in a whole new row from the library when a page needs one.
See how AI helps you build →
Design library
600+ templates built from one set of primitives
Heroes, feature grids, pricing tables, galleries, headers, footers, contact rows, FAQs and rows built for specific industries. Pick one, drop it on the page, and every piece of it is editable. Because each template is assembled from the same primitives, rows from different families share one vocabulary for spacing, color and type, so they sit together on a page without clashing. Rows that repeat are built as loops rather than ten copies of the same card: one set of elements and utility classes drives every item, so making the card titles bigger is one edit instead of ten. That holds whether the items come from a content type or are simply a list you typed into the row.
Get Started Free →Shared rows and themes
Change the header once. It changes everywhere.
The header, footer, page-title band and closing CTA are shared rows: edit one and every page picks up the change. Themes bundle a set of pages with their branding, so a finished site can be exported and imported on the next install as a starting point. Need a row the library does not have? Custom rows and custom primitives can be authored per install, and they live in a folder the updater never touches.
Extend the builder as a developer →
One media library, every size handled for you
Upload an image once. The responsive image pipeline generates the variants, sizes them to the slot they fill, and serves them as static files.
Structured content with typed fields, not a pile of pages
Define a content type once: services, team members, projects, locations, meeting minutes, anything with a shape. Give it typed fields, relations to other types and taxonomies. Each record gets its own page, and listings pull from the records, so a new entry shows up everywhere it belongs.
Choose a detail layout per record from the design library, schedule publishing, and run the blog, with categories and comments, on the same system.
See the industry solutions →
Branding
Set the brand once and every row follows it
Colors, type and spacing are site settings, not per-page choices. Change them and the whole site moves with them, including the rows you have not built yet.
Three color families
Section presets
Typography presets
Section spacing
Dark mode
Logo and favicon tooling
Classes when you want them
Per-row overrides
The details that make a page finished
Forms, motion, visibility, and the checks that catch a problem before a visitor does.
Forms builder
Build contact, quote and application forms, place them on any page, and read every submission in an inbox. Spam protection is built in.
Entrance animations
Pick an entrance animation for a row or an element from the sidebar and it plays as the visitor scrolls to it. No code.
Visibility rules
Decide where a row shows and where it stays hidden without duplicating the page. One layout, the right rows for each visitor.
Responsive preview
Switch the live preview between phone, tablet and desktop widths while you edit, so a stacked card grid is never a surprise on launch day.
Accessibility scanner
Scan any public page for WCAG issues from the dashboard or right inside the editor, and fix them before you publish.
SEO on every page
Meta title and description, Open Graph tags, JSON-LD for your organization, FAQs and breadcrumbs, and a sitemap that updates itself. No plugin to install.
Translations that know when they are out of date
Run the site in more than one language without serving copy that quietly went stale.