Now shipping for Strapi 5

Visual page building,
without giving up your code

Editors drag and drop your own React components onto a canvas that renders your real site. Layouts are saved as structured JSON in your own CMS. No shortcodes, no page-builder markup, nothing you cannot read.

Free forever on dev machines · No credit card · $29/mo when you go live

cms.your-company.com/admin/plugins/wizestudio
The WizeStudio editor: a widget library on the left, the live site rendering in the centre canvas with a section selected, and that section's content and style settings on the right.
575Tests passing
0Lines of HTML stored
MITLicence on the render path
28 daysOffline grace window

01 What makes it different

Your components.
Not ours.

Every widget is an ordinary React component plus a manifest. The builder reads only manifests. The renderer imports only components. WizeStudio never needs to know what a pricing table is — it just orchestrates the one you wrote.

— 01

The canvas is your actual site

Not a preview, not an approximation. Your real Next.js app loads in the canvas and the editor drives it over a versioned message protocol. What an editor arranges is produced by the same code path that serves your visitors, so “looked fine in the builder” stops being a category of bug.

Navigator — the full document tree
The navigator panel showing a nested tree of sections, containers, grids, stats, headings and accordion items, with the selected section highlighted.
— 02

Bind anything to your content

Point any component property at a CMS field instead of typing it in. Repeat a component over a collection to build product grids and post lists that stay in sync with your data. Nested loops each get their own alias, so a category can contain its products without the two fighting over a name.

{
  "type": "wize/card",
  "repeat": { "source": "products", "as": "product" },
  "props": {
    "title": { "kind": "binding",
               "source": "product", "path": "name" },
    "price": { "kind": "binding",
               "source": "product", "path": "price.amount",
               "fallback": "—" }
  }
}

02 In the box

Everything an editor needs, nothing you have to maintain

Responsive by breakpoint

Style any property per breakpoint. The canvas resizes to match, so you are editing the layout you are looking at.

Design tokens

Colours, spacing and type live as tokens that render to CSS custom properties. A rebrand is one edit, not a hundred.

Reusable blocks, by reference

Save a section once, use it everywhere. Edit the original and every instance updates — instances are references, not copies.

Undo everything

Every change is an invertible patch. Undo, redo, autosave and history are one mechanism, so they can never disagree.

Slots and constraints

Manifests declare what may nest inside what. Editors get real composition without being able to build something broken.

Structural navigator

A full tree of the page. Select, reorder and reparent anything, including elements a click cannot reach.

Validated documents

Referential integrity is enforced as an invariant, not hoped for. A layout that would render broken cannot be saved.

One editor at a time

Editing takes a lease. Two people opening the same page see who holds it and can take over deliberately.

03 Integration

Two packages and an afternoon

There is no migration, no content rewrite and no proprietary runtime. You install a plugin, register the components you already have, and render a document.

STEP 01

Install the plugin

Restart Strapi. It registers itself and adds WizeStudio to the admin sidebar.

npm i @wizestudio/plugin-strapi
STEP 02

Register your widgets

A component plus a manifest describing its props and slots. The manifest is data.

defineWidget({ type, props, component })
STEP 03

Render the document

Hand the layout and your component pack to the renderer. That is the integration.

<WizeRenderer document={doc} />

04 Honestly compared

How this differs from the usual options

Most teams choose between a WordPress-style builder and hand-built components. Both trades are real. This is what each one costs you.

WizeStudioClassic page buildersHand-built components
Editors can build pagesYes, visuallyYes, visuallyNo — needs a developer
Components stay yoursYour React, unmodifiedTheir widget systemYour React, unmodified
What gets storedNormalized JSON in your CMSHTML or shortcodesTyped CMS fields
Leaving laterRead the JSON, it is documentedRewrite every pageNothing to leave
New layout without a deployYesYesNo
Production runtime costNone — it is your component treeBuilder runtime and CSSNone
If the vendor disappearsRenderer is MIT; site keeps workingSite depends on their runtimeUnaffected

05 Licensing, stated plainly

A lapsed subscription cannot break your live site

That is not a promise about how we would behave. It is a property of how the packages are split, and you can verify it before you buy.

Nothing licensed on the render path

The renderer and schema packages are MIT and contain no licensing code at all. There is no check in production to fail, time out, or fail closed.

Verified offline

Licences are Ed25519-signed tokens checked on your own server. A licence check never depends on reaching us, so our downtime is never your outage.

Unknown is not invalid

An unreachable or slow server is treated as unknown, never as expired. Only an explicit revocation revokes. Plus a 28-day grace window past expiry.

06 Pricing

Free until it is live

Development hosts are free, unlimited and permanent. You pay when the site goes on a real domain — and never for the pages that are already published.

Monthly

$29per month
  • Unlimited pages and layouts
  • One live domain, unlimited dev and staging
  • Every widget, block and theme feature
  • Email support

Developing locally? localhost, .local, .test and private networks need no licence, ever.

Install it now

07 Questions

Frequently asked

What is WizeStudio?

WizeStudio is a visual page builder for headless CMS platforms, currently shipping for Strapi. Editors compose pages by dragging your own React components onto a canvas that renders your real site. Layouts are saved as structured JSON in your own content type, so nothing is locked in a proprietary format.

Do I have to use your components?

No, and that is the central design decision. A WizeStudio widget is an ordinary React component plus a manifest describing its props and slots. The builder reads only manifests and never imports your component; the renderer imports your component and never reads a manifest. WizeStudio does not need to know what a pricing table is in order to let someone arrange yours.

Where is the page layout stored?

In a JSON field on your own content type, as a normalized document of typed nodes with stable IDs. It is queryable, diffable and migratable, and any other tool you build can read it. WizeStudio never stores rendered HTML.

What happens to my site if I cancel or my subscription lapses?

Your site keeps rendering exactly as before. The packages that serve pages in production — the renderer and the schema — are MIT-licensed and contain no licensing code at all, so there is nothing in the production path that can expire or fail closed. A lapsed subscription disables the editor and nothing else. This is structural rather than a policy we promise to honour.

What happens if your licence servers go down?

Nothing happens to you. Licences are Ed25519-signed tokens verified offline on your own server, so a licence check never depends on reaching us. An unreachable or slow server is treated as unknown, never as invalid. Tokens also carry a 28-day grace window past expiry, so a firewall rule or an expired card in dunning cannot take your editor away mid-recovery.

Is it really free on development machines?

Yes, with no time limit and no account required. localhost, 127.0.0.1, ::1, any .local or .test hostname and private network ranges such as 192.168.x.x are classified as development hosts. They never need a licence and never count against your domains, so you can evaluate the entire product before paying anything.

How many domains does a licence cover?

One live domain per licence, plus unlimited development and staging hosts. You register your live domain from the dashboard and can change it when you need to — during a migration, for example.

Which CMS platforms are supported?

Strapi 5 today. The core is CMS-agnostic by design: platform support is a thin adapter package, so adding a new CMS does not touch the builder, the renderer or the document format.

Does it work with Next.js?

Yes. The renderer is a React package and ships a Next.js integration. The editor canvas loads your real Next.js app in an iframe and drives it over a versioned message protocol, so what an editor arranges in the builder is produced by exactly the same code path that serves your visitors.

Can editors bind components to CMS content?

Yes. Any component property can be pointed at a field in your CMS instead of being typed in by hand. A component can also repeat over a collection, which is how product grids and post lists are built without the core knowing what a product or a post is.

Is the page output good for SEO and performance?

The output is whatever your components render — WizeStudio adds no wrapper markup, no runtime JavaScript of its own and no inline style blobs to the production page. Server rendering, streaming and static generation all work normally because the renderer is an ordinary React component tree.

How do I install it?

Install @wizestudio/plugin-strapi in your Strapi project and @wizestudio/renderer-react in your front end, register your widgets, and point the plugin at your front-end URL. The whole integration is fetching a layout document and handing it to the renderer along with your component pack.

Try it on your machine first

WizeStudio is free and unlimited on development hosts, so you can build a real page with your real components before you decide anything. A visual page builder for headless CMS.