Static page generator

Static marketing pages your AI can build and your team can edit

Create pages from structured sections and rows, customize Liquid templates, then export clean static HTML to S3, your website, or any publishing pipeline.

StaticPages API gives teams a database-backed page system without locking the final output inside Rails.

Page records flowing through Sections, typed Rows, and Liquid into a finished marketing page
Editable content. Exportable HTML.

Simple records can produce complete marketing pages

Pages organize the document, Sections define its major bands, and Rows hold typed content such as headings, copy, images, links, and ordering.

Reusable Liquid templates turn that structured data into polished static HTML. The detailed flow below shows how the same records can render once and publish to WordPress, Shopify, Rails, S3, or another destination.

Detailed Page, Sections, and Rows data model flowing through Liquid into static HTML and publishing destinations

Benefits

Built for fast marketing pages, not fragile one-off HTML

Use Liquid templates for layout and keep page content editable through normal section and row forms.

AI-created layouts

Ask an AI to turn a reference section or Figma mockup into a reusable Liquid template.

Human-editable content

Your team edits headers, body copy, images, links, and template fields without touching code.

Export anywhere

Package the page as static HTML with its template CSS and inline JavaScript behavior.

Reusable templates

Turn strong sections into repeatable Liquid templates your team can clone, edit, and deploy across future campaigns.

From page idea to export-ready HTML

The workflow stays structured enough for APIs and simple enough for marketers.

Create a page

Start from the dashboard, an API request, or a seeded default marketing page.

Add sections and rows

Compose heroes, cards, FAQ blocks, pricing, sliders, and custom Liquid components.

Publish with webhooks

Trigger the receiving site when a page changes so your static output stays current.

Export static HTML

Deploy the output to S3, your main website, or a custom publishing worker.

Manual page building

Build manually with built-in components—or let AI compose with Liquid templates.

Choose the workflow that fits the page: hands-on visual assembly for speed and predictability, or AI-assisted custom layouts when you need more design flexibility.

Manual + built-in components

Use the visual editor to add proven heroes, cards, images, pricing, FAQs, sliders, and calls to action. You control every choice, preview changes as you work, and never need to write a prompt or touch template code.

AI + Liquid templates

Give AI a detailed brief and let it combine structured content with reusable Liquid templates for more distinctive layouts. The result still breaks down into editable sections, rows, images, links, and fields.

Mix both workflows

Start manually and ask AI to enhance a specific section, or generate a draft and finish it with built-in components. Either way, you keep static HTML exports, webhooks, reusable content, and portable publishing.

Important guidance for AI-generated pages

Give the AI a detailed brief

AI results depend on the instructions you provide. Describe your audience, goals, required content, tone, calls to action, constraints, and design direction. Vague or incomplete instructions can produce generic, inaccurate, or otherwise sub-optimal results.

Pages that can move with your publishing stack

Use the same content model for landing pages, integration docs, feature pages, and campaign pages.

Landing pages
Landing pages
Component libraries
Component libraries
Webhooks and exports
Webhooks and exports
Reusable galleries
Reusable galleries

Integrations

Publish StaticPagesApi pages into the platforms you already use

Use StaticPagesApi as the editable source of truth, then send rendered pages and fragments into WordPress, Shopify, Rails, or your own publishing stack.

Custom integration

Connect the API and signed webhooks to a private CMS, CDN worker, static host, or internal deployment pipeline.

Webhook setup Integration docs

One deployment key. Every matching placement.

Reuse one organization-scoped key across pages—or more than once on the same page—and atomically deploy the same React, Vue, Svelte, or other interactive component everywhere it belongs.

Place one key anywhere

Give every intended section or row the same deployment key. One CI deploy updates every match across multiple pages or multiple locations on one page.

Component deploy target docs

Ship A/B tests and campaign variants

Publish different hero modules, signup flows, offers, or proof blocks to multiple destinations for marketing A/B tests and regular campaign pages.

AI page generation docs

Run SPAs inside selected sections

Mount a React, Vue, Svelte, or plain JavaScript SPA inside a chosen StaticPagesApi section, similar to a simple component deploy target.

SPA overlay docs React component deploy repo

No-code embeds

Use Google Forms, Typeform, Calendly, or custom widgets for live functionality

StaticPagesApi keeps the page editable while trusted embeds handle submissions, scheduling, surveys, and other interactive workflows.

Choose the service

Create the form, booking flow, survey, calculator, or intake workflow in Google Forms, Typeform, Tally, Calendly, or another embeddable tool.

Paste the embed snippet

Copy the iframe or script snippet and place it in a raw HTML section, split-pane overlay, or full-width overlay depending on how much space the workflow needs.

Export without rebuilding it

The exported page keeps the embed markup, so the live form continues to submit to the original service after publishing to WordPress, Shopify, Rails, S3, or another destination.

Upgrade when needed

When no-code embeds are not enough, developers can use component deploy targets to ship React, Vue, or plain JavaScript widgets into the same page model.

Architecture overview from AI and API inputs through structured content, Liquid templates, static export, and publishing destinations

FAQ

Questions before you build

The short version: pages stay editable, templates stay reusable, and exports stay portable.

Yes. The export is static HTML with the CSS and inline behavior needed by the selected Liquid templates.

Yes. Custom templates live in the database with Liquid, CSS, JavaScript, field schemas, sample data, and editable instance data.

Yes. Sections and rows keep the normal editing workflow, and template fields add only the extra data each component needs.

Yes. Use saved webhook destinations and the integration guides to send rendered pages or fragments into WordPress, Shopify, a Rails engine, S3, or a custom receiver.

Yes. Reuse one organization-scoped deployment key on sections or rows across multiple pages or multiple times on one page. One atomic deploy sends identical HTML to every match. Use {{ deployment_instance_id }} in mount IDs and DOM lookups so each placement initializes independently.

Yes. AI-created pages can stay in draft while your team reviews copy, images, SEO fields, templates, and publishing destinations.

Yes. You can clone pages or deploy different fragments to specific destinations so marketing teams can test offers, sections, forms, and campaign variants.

Start with one page. Keep the output portable.

Choose a subscription tier for the publishing system, templates, exports, and API workflow.