Open-source website builder with a Framer-like visual editor, AI generation from a text prompt, and standalone HTML export. The source of truth is a typed JSON config, not generated code.
The Problem
Lovable, v0, and Bolt generate source code from prompts. LLMs hallucinate imports, produce unmergeable diffs, and every edit risks breaking the build.
Framer and Webflow work great for humans but store designs in proprietary formats. AI agents can't read or edit them programmatically.
The Solution
A typed JSON config sits between the editor and the renderer. Humans drag blocks, agents POST JSON. Same source of truth, clean diffs, predictable results.
Every mutation produces the same structured output. No surprises.
JSON changes are easy to review, merge, and version-control in Git.
AI agents make surgical edits via a structured API. No code gen needed.
Source of Truth
One JSON document. Change it, the site updates. No build step, no compilation, no broken imports.
{
"name": "My Startup",
"theme": {
"bg0": "#09090b",
"accent": "#22c55e",
"fontDisplay": "Space Grotesk",
"radius": 8
},
"blocks": [
{
"type": "hero",
"variant": "centered",
"props": {
"headline": "Ship websites in minutes",
"primaryCta": "Start Building"
}
},
{
"type": "features",
"variant": "grid",
"props": {
"items": [
{ "icon": "Zap", "title": "Fast" },
{ "icon": "Shield", "title": "Reliable" }
]
}
}
]
}
Features
Drag-and-drop blocks with real-time preview, inline editing, and undo/redo.
POST a prompt, get a complete website as structured JSON. Powered by Gemini.
Navbar, hero, features, pricing, testimonials, FAQ, and 13 more. 42 layout variants.
Colors, fonts, radius, spacing. Fully customizable via CSS custom properties.
One-click export to standalone HTML. Zero runtime dependencies. Deploy anywhere.
MIT licensed. Clone, install, run. You own your data, config, and output.
Block System
Every block has a typed TypeScript schema, multiple visual variants, and automatic theme integration.
Comparison
| Framer | Webflow | Lovable | v0 | Bolt | OpenPage | |
|---|---|---|---|---|---|---|
| Source of truth | Proprietary | Proprietary | Code | Code | Code | JSON config |
| Agent-editable | No | No | Prompt only | Prompt only | Prompt only | Structured API |
| Human-editable | Visual | Visual | Code | Code | Code | Visual + JSON |
| Predictable edits | Yes | Yes | No | No | No | Yes |
| Version control | Limited | Limited | Messy diffs | No | Messy diffs | Clean diffs |
| Self-hosted | No | No | No | No | No | Yes |
| Open source | No | No | No | No | No | MIT |
| HTML export | No | Limited | Yes | No | Yes | Standalone |
| Pricing | From $5/mo | From $14/mo | From $20/mo | From $20/mo | From $20/mo | Free |
Get Started
Use Cases
Generate a complete landing page from a text prompt in under 30 seconds, then fine-tune visually.
Give your agent a structured API to build and edit websites without fragile code generation.
Build sites visually, export to standalone HTML, deploy anywhere. No vendor lock-in.
Version-control your marketing site as JSON. Review changes in pull requests with clean diffs.
Fork OpenPage as the foundation for your own website builder product. MIT licensed.
Drag blocks to prototype page layouts, export the result, hand off to your dev team.
FAQ
npm install && npm run dev, and the editor runs locally. The AI endpoint can be deployed as a Vercel serverless function or adapted to any backend. Exported sites are standalone HTML files you can host anywhere.
npm run dev, and open the editor at localhost:5173. Click "New Site," add blocks from the picker (navbar, hero, features, pricing, footer), edit text inline, choose a theme, then click "Export" for a standalone HTML file. For AI, set a Gemini API key and describe your site in the prompt field.
prompt field to /api/generate. The API returns a complete SiteConfig JSON object. Your agent can modify this JSON programmatically and render it directly. The structured schema ensures precise, predictable edits.
/api/generate endpoint sends a prompt with the block schema and receives a complete site config as structured JSON. You can swap in any LLM that supports structured output by modifying the endpoint.
Open source, self-hosted, MIT licensed. The website builder where JSON is the source of truth.