Platform
What you configure, and what you do not have to write.
Five parts, one installation. For each: what you set up, what you no longer write, and where it is documented.
Data model
You configure
Classes, fields and relations in the dashboard, changed at run time. Objects, translations and workflow states for review.
You do not write
A schema migration or a deploy to add a field, nor a second model for the mobile app or the API: they read the same one.
Gateway to your systems
You configure
An endpoint by its base URL or an OpenAPI file, how it authenticates (API key, bearer, basic, OAuth 2 client credentials), a rate limit, and which fields a block shows. Presets exist for common vendors.
You do not write
The connector, the token handling or a proxy for the browser. Credentials are encrypted at rest and used only inside the gateway: the editor, the browser and the published site never see them.
Visual editor
You configure
Pages from blocks, snippets, kits, themes, templates with header, aside and footer, translations, and the bindings between a block and live data. A page is stored as a validated tree, not as HTML, so the same page can be a site, an app screen or an API response.
You do not write
A page template per channel, or a release to change the text of a button.
Events and forms
You configure
Subscriptions to changes of objects, files and pages, with signed deliveries, retries and a guard against loops; forms with file uploads. The engine that reacts to an event is yours (Node-RED, n8n, your own service): Whoobe emits, it does not impose one.
You do not write
Polling jobs to find out that something changed.
Publishing
You configure
A static or server-rendered website (Nuxt or Next.js), a documentation site from Markdown, a native mobile app (Capacitor) or the headless API with adapters for React, Vue, Next.js, Nuxt and Svelte.
You do not write
A different pipeline for each surface.
See it working
The sandbox has a demo website, two kits and the editor; ./try.sh runs the whole stack on your machine.