Should I vibe code
Freeform web publishing for portfolios, stories, magazines, and presentations
Freeform means every element is a coordinate. The font falls back once and the whole page moves.
?
Their verdict, the Personal price and the build-time estimate come from their entry, MIT-licensed. Checked 2026-08-04.
?
Our verdict, the regret score and everything below it. Editorial and unsponsored — nobody can pay to be moved.
The honest answer
why the verdict is what it is
Nobody gets hurt here, which is why this lands where it does rather than lower. The trouble is that the thing Readymag sells is the exact thing that makes a homemade version unmaintainable: freeform placement. A grid builder stores intent — this block, full width, under that one — and a browser can recover from being wrong about it. A freeform builder stores coordinates, so a font that falls back, a viewport thirty pixels narrower than a breakpoint you designed, or a heading that wraps to three lines on a phone does not degrade, it collides. You will spend the first weekend on the drag-and-drop canvas, which is a delight, and then the rest of the year on the part you did not think was a feature: the breakpoint model, the font subsetting, the image pipeline, the certificate that renews on a custom domain at 3am on a Sunday and the day it does not. Build the editor because editors are fun. Publish from something that already knows how to keep a domain online.
What actually breaks
not "if". the specific failures.
- Layout on any viewport you did not personally design for, because absolute coordinates have no fallback behaviour — elements do not reflow, they overlap
- Fonts, where a webfont that fails to load shifts every metric-dependent position on the page at once, and the failure looks like a broken site rather than a slow one
- Custom domains, which mean DNS, certificate issuance and automatic renewal — the renewal is the one that gets you, silently, fourteen months in
- Images, since a design-led builder is mostly large photographs, and without a resizing and format pipeline your portfolio ships eleven megabytes to a phone
- The document format, a bespoke JSON tree of coordinates that only your renderer understands, with no export unless you built one
- Password protection, if you add it, which is an authentication system you wrote for pages you did not want public
- Animation and scroll effects, the actual reason people choose this category, and the part that behaves differently on iOS Safari than anywhere else
- Accessibility, because absolutely positioned elements have a DOM order unrelated to their visual order, and a screen reader follows the DOM
- SEO, for the same reason, plus the fact that a canvas-driven page often ships its content late enough that crawlers see very little
Is that you?
the verdict is a default, not a law
- It publishes static HTML to a host you did not write, on a domain you manage elsewhere
- The only site it builds is yours, and you would notice within a day if it looked wrong
- There is an export to plain HTML, CSS and assets before there is a second feature
- You are building it because the canvas is the interesting problem, not because you need a website by Friday
- Other people's sites are published from it, which makes their uptime your Sunday
- It is the client's portfolio and you are the one who will be called when the certificate expires
- Pages collect anything from visitors, because forms turn a static site into a personal-data question
- There is no export path and the layout format exists only in your database
If you build it anyway
the checklist, then the prompt that enforces it
- Publish static files. If the output is HTML, CSS and images on object storage behind a CDN, most of this entry stops applying — the editor can break without the published site noticing.
- Build the exporter before the second editor feature. A folder of HTML and assets means the site outlives the builder, which is the only real insurance in this category.
- Version the document schema from the first save, with a migration and a round-trip test. A coordinate tree with no migrations is a portfolio that stops opening.
- Store layout as constraints where you can — anchored to a container, a percentage, a safe area — rather than raw pixel offsets. It is more work up front and it is the difference between a site that bends and one that breaks.
- Subset and self-host every font, and test the page with the font blocked. If the layout collapses without it, the layout is wrong.
- Build the image pipeline early: resize, compress, modern formats, explicit dimensions. Design-led sites are almost entirely photographs and this is where the megabytes are.
- Do not take on custom domains and TLS unless you want to own certificate renewal forever. Point the domain at a static host that already does ACME and let it be their problem.
- Check the DOM order against the visual order on every template. Absolute positioning divorces the two, and both screen readers and crawlers follow the DOM.
I am building a freeform website builder: a canvas where elements are placed by coordinate, with breakpoints, custom fonts and publishing to a domain. The failure I care about is a published page that collapses on a viewport or a font I did not test. Build defensively against that and keep publishing boring.
1. Publishing outputs static HTML, CSS and assets to object storage behind a CDN. The editor
and the published site share no runtime. If I ask for server-rendered pages, push back and
explain what that adds to my on-call.
2. Build the exporter in the same week as the editor: a downloadable folder of HTML, CSS and
images that opens correctly from the filesystem. I want the sites to outlive the tool.
3. Version the document schema on the first save, with a migration function and a round-trip
test. Never change the layout format without one.
4. Prefer constraint-based positions — anchored to a container, expressed as percentages, with
a safe area — over raw pixel offsets. Where raw offsets are unavoidable, say so and show me
what happens at a viewport between two breakpoints.
5. Self-host and subset every font. Add a test that renders each page with webfonts blocked and
flags any element that moves more than a few pixels or overlaps another.
6. Build the image pipeline before the animation features: resize, compress, emit modern
formats, and always write explicit width and height attributes.
7. Do not implement TLS or ACME yourself. Use a static host that already renews certificates,
and tell me plainly that automatic renewal is the thing that fails silently a year later.
8. Check DOM order against visual order for every page and warn me when they diverge. Absolute
positioning breaks both screen readers and crawlers in the same way.
9. Autosave locally as well as remotely and keep several snapshots. The realistic disaster is a
crashed tab, not a hacked server.
10. If I ask for password-protected pages, refuse to hand-roll it in the published output — use
the host's access control or a signed link, not a JavaScript check.
11. Out of scope unless I ask again: forms and anything that collects visitor data, multi-user
editing, e-commerce, and hosting sites for other people.
12. Finish by reminding me that $19 a month covers domains, certificates, a CDN and an image
pipeline, and ask which of those four I actually want to be responsible for.That one keeps you out of trouble. For the prompt that actually builds it, canivibecodeit.com has one.
their build prompt ↗Or don’t build it
the boring option, and the way back out
You want the site more than you want the builder. Nineteen dollars a month month-to-month, or fourteen on the annual plan, covers the domain connection, the certificate, the CDN, the image pipeline and the breakpoint model — which is a fair chunk of what a freeform builder actually is once the drag-and-drop is done. If you only need a portfolio and are comfortable in a text editor, a static site generator plus a free host does the same job for nothing and exports by definition. Pay when the design is the product and you would rather spend the weekend designing than debugging Safari.
$19/mo is cheaper than your weekend.
The exit is straightforward if you build it on day one and impossible if you do not: an export that produces plain HTML, CSS and assets which open correctly from a local folder. Publish static files from the start so the live site never depends on your editor being alive, and keep the document JSON versioned and dumpable so you could write a converter later. Register domains in your own registrar account rather than through the tool, and if the site is ever anyone else's, hand over the exported folder and the DNS before you switch anything off. A static site with no build step is the most portable artefact on the web; a coordinate tree in your database is the least.
Actively developed open-source visual builder that outputs real HTML and CSS rather than a proprietary runtime.
Long-running open-source web-builder framework you can embed instead of writing the canvas yourself.
Questions
Why is a freeform builder harder to maintain than a block-based one?
Because of what gets stored. A block builder records intent — a section, full width, containing an image and a heading — and the browser's layout engine resolves that sensibly on any screen. A freeform builder records positions, so the browser has nothing to reason about: if a heading wraps to an extra line or a font falls back to different metrics, nothing reflows and things overlap instead. That is the same property that makes the editing experience feel like a design tool, so you cannot have one without the other.
Is it fine if I only build the editor and publish elsewhere?
That is the version we would actually endorse. An editor that emits static HTML, CSS and images into a folder is a satisfying project with a blast radius of one, and everything painful in this entry — certificates, domains, uptime, view metering — belongs to whatever host you drop the folder on. The trap is the moment publishing becomes something your own server does, because then a site being online depends on your code being online.
canivibecodeit says KINDA. You agree — so what is the gap they are describing?
Roughly the same one. Their estimate is a weekend to multi-day, which is honest for a canvas with drag, snap and breakpoints. Ours is about what happens after: the export, the font handling, the image pipeline and the responsive behaviour are each larger than the editor, and none of them are the part you wanted to build. Nothing dangerous happens; you just will not finish.
Every week, someone ships something they shouldn’t have.
New verdicts, the worst thing that landed in the trap, and the occasional incident report. No other email, ever.
Tilda ships 550 blocks that survive a 320-pixel phone. Your agent will build the editor and nine blocks.
A text-first site builder is a static site generator with a nicer front door. You already own three of those.
It's AGPL and self-hostable. Its own docs say don't self-host the builder in production. Believe the maintainers.
last reviewed 2026-08-05 · verdict is editorial and unsponsored · shared entry data from canivibecodeit under MIT · not legal advice