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.
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.
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.
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.
WordPress plugin
Send exported campaign pages, SEO pages, and landing pages into WordPress while preserving StaticPagesApi as the source of truth.
Shopify plugin
Publish custom product stories, collection pages, and seasonal campaign pages into Shopify storefront destinations.
Rails engine
Receive signed exports in a Rails app, store imported HTML, and serve public pages from the host application route structure.
Custom integration
Connect the API and signed webhooks to a private CMS, CDN worker, static host, or internal deployment pipeline.
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.
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.
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.
Publish to many destinations
The same editable page can publish to WordPress, Shopify, Rails, S3, or a custom receiver. Fragment updates trigger the normal webhook flow for every affected page.
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.
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.


