01 — Editor
Fields where editors expect them.
Custom post types and field groups without a plugin zoo. The admin stays calm while the schema stays flexible.
Products / Modular CMS
Powers atypisch.com itself amongst other running projects. Open source. Late beta.
Walkthrough
Scroll. The screen stays put, the story moves.
01 — Editor
Custom post types and field groups without a plugin zoo. The admin stays calm while the schema stays flexible.
02 — Content
Compose pages with reusable components. Relations stay queryable. Preview works for unpublished work.
03 — Build
PHP API for themes, Vue admin where it helps. Open source. Powers atypisch.com itself.



A CMS you can still explain in five years.
Spec sheet
Define post types and field groups in one place. Repeaters, relations, blocks, media.
md_get_post, md_get_field, render_blocks. Themes stay thin and readable.
Multi-language content next to the same posts. No duplicate product for locales.
Modern editor UI on a PHP core. Export and import for moving content between environments.
Under the hood
PHP 8.1, MySQL 8, Vue 3. Chosen to stay maintainable, not to impress a changelog.
Releases
A post type carries its own field structure, edited where the type is defined. Field groups are for adding extra fields on top, bound by a condition. Editing either now invalidates the cached schema immediately, where a change used to take up to five minutes to appear.
Feature updateA warm page render went from forty to fifty queries down to seven to thirteen. Settings, menus and the module registry are read once and cached, system modules no longer write to the database on every request, and four boilerplate queries per request are gone.
PerformanceOne site's routes, migrations, configuration and helpers moved out of the core and into its own module, behind three routing hooks a module can claim a URL with. The core front controller lost four hundred lines and no longer names a single theme or site.
Major releaseA scheduled post publishes itself once its time passes, without a cron job. Content overviews gained pagination, indexes, caching and search across custom fields.
Feature updateThe legacy admin is removed and the Vue admin is the only one, with zero external dependencies at runtime. Per-post-type export and import bundles carry their own media, uploads are stored by year and month, and the relationship picker stays fast on a long list.
Major releaseAlso in the family
Lightweight deployment platform between Vercel and Kubernetes. Push code, pick an EU region, run.
Auth, payments and tenant management. JWT with refresh rotation, OAuth2/OIDC, Mollie.