“"Instatic is very RAW at its current form, but it's matter of polishing and attention to detail :)" — DavidBabinec, maintainer, GitHub Discussions #164, 2026-07-02 (https://github.com/CoreBunch/Instatic/discussions/164)”
You know that feeling when a client asks for a simple marketing site and you end up renting five products to deliver it — a page builder, a content system, a form service, a media host, and the hosting — each with its own bill, its own dashboard, and its own way of holding your content hostage? Then you open view-source on the finished page and find a framework runtime wrapped around three paragraphs of text. And when the client wants to move, there is no export that survives the trip intact. Instatic's bet is that all five jobs belong in one program you run yourself, and that what comes out the far end should be a folder of HTML files.
Think of it like a print shop that keeps a finished, ready-to-hand-over copy of every page on the shelf. You design pages on a drag-and-drop canvas in the browser, and everything — pages, blog posts, reusable components, custom tables — lives in the same two database tables, so there is no separate pages table to keep in sync. When you press publish, the server renders every page to an HTML file under uploads/published/current and swaps the live folder over with a single symlink move, so visitors never see a half-published site. Serving one of those baked files costs 0.6 to 1.4 ms with no database call and no render, according to the project's architecture doc. The clever part is what happens to the pages that cannot be fully static: a function called findDynamicNodeIds classifies dynamic nodes automatically and emits placeholder tags that lazy-fetch their content through a roughly 1.1 kB IntersectionObserver script — you never pick static versus dynamic yourself, which is the fork almost every competing tool makes you decide up front.
If you build client sites for a living in WordPress, Webflow or Framer and you are tired of the per-site subscription stack, this is aimed squarely at you — the makers say on instatic.com that they also build Motion.page and Core Framework for exactly that crowd. It also fits if you self-host and want a site builder whose output is a folder of HTML you can move anywhere. It is not for you yet if you need to run one instance across more than one container on SQLite, if you need arm64 containers today, or if you need a vendor with a support contract — the maintainer describes the current state ...
Worth a weekend of your time to evaluate, not worth a client deadline yet. The architecture is unusually disciplined for a three-month-old project — 81 build-failing architecture tests, an atomic symlink publish, a plugin sandbox with documented heap and timeout budgets — and the release cadence is real at 13 tagged releases in 46 days. But the README calls it pre-1.0 on purpose, the CHANGELOG states that breaking changes may appear in patch releases, and issue #185 documents an admin-login lockout on Railway with a public domain that has sat open with no maintainer reply since 2026-07-05.
Deep-dive insight, Easy and Pro modes, plus action playbooks — the full breakdown is one tap away.