Kernset Kernset

About

Why we are building Kernset

Custom-coded websites look great. But clients cannot edit them. WordPress lets clients edit. But the design falls apart within months. Kernset is the third option: code-defined structure, client-editable content, one admin for all of them.

Principles

The principles

Layout and design stay in code. By design.

Colors, fonts, and layout primitives are not exposed in the editor. Flexible zones are Lego bricks within a code-defined slot - they do not give clients control over layout. Theme editing is permanently and deliberately out of scope.

Clients edit content, not structure

Every editable region is explicitly defined by the developer. The editor renders against a typed schema. No free-form HTML paste. No WYSIWYG escape hatches. The spec is what you shipped, not what the client found.

Multi-tenant from the first commit

Database-level isolation between client workspaces. This is not bolted on later - it is the architecture. Every record carries the workspace it belongs to. Cross-workspace access is blocked structurally.

Multi-language, SEO, and blog from day one

Not v2 features. Not add-ons. Multi-language content, per-page SEO, hreflang, sitemaps, and blog are part of the core. Because most client websites need them.

Reliability over flexibility

When two paths exist, we take the one with fewer failure modes - even if it costs surface area. One missed call because of a CMS outage costs more than a missing feature.

Deny by default

Every query is workspace-scoped. Secrets are encrypted at rest. Audit logs are a first-class collection. The default is no access; access is explicitly granted.

Anti-features

Permanently out of scope

These are not roadmap items that will land in v2. They are deliberate decisions that make the rest of the product work.

  • No theme editor

    Colors, fonts, layout primitives stay in the agency's code. Clients never touch them. This lets the design survive years of client edits.

  • No visual page builder

    Block schemas live in TypeScript, not as a JSON config in the database. The editor cannot create new block types or rearrange the page grid.

  • No free-form HTML

    Client-editable fields are typed (text, image, FAQ, contact info). HTML cannot be pasted in. Closes the single most common way clients break a design.

  • No client-defined block types

    Block authoring is the agency's job, by design. Clients pick from the agency-defined block library. They do not extend it.

  • No platform-hosted customer apps

    Client websites run wherever the client's hosting choice allows. The platform itself never deploys client-side rendering on its own VPS.

Let's talk

Send us a message about your client portfolio and what you are trying to solve.

Contact

Email or use the form. Tell us how many client websites you maintain today and where the friction is.