Nexus CMS

Introduction

What Nexus CMS is and why it exists.

Alpha testing — Nexus CMS 0.1.x is under active alpha. Product usage is free until a stable release. APIs and docs may change; please leave feedback from the site widget.

Nexus CMS turns any Next.js UI into an in-context visual CMS editing layer — with the exact same design — and backs it with a pluggable content store (a Filament/Laravel adapter ships for the MVP).

It is built for developers and software houses. You keep writing normal React/Next.js code; a build-time compiler makes it CMS-ready with near-zero configuration and no visible wrapper components, and a runtime overlay editor lets non-developers edit text, swap images, toggle sections, reorder cards, manage SEO and roll back versions — without breaking your styles.

Why it's different

  • No wrapper soup. A build-time compiler injects invisible data-cms-* ids; your source stays readable.
  • Override model. Your code is the source of defaults; the CMS stores overrides. You get diff-vs-original, revert and versioned rollback for free.
  • Self-contained overlay. The editor renders in an isolated top layer and builds its own hit-targets from measured boxes, so even an image behind text is editable (no z-index dead-zones), and it never clashes with your theme.
  • Convention + escape hatches. Names are auto-derived from component/function names. Opt out with // @cms-ignore, // @cms-readonly, or rename with // @cms-name(...).
  • Configurable per project. Toggle features (e.g. disable image editing but keep code support) via nexus.config.ts.

The packages

PackageRole
@nexus-cms/coreSchema, override/diff/version model, storage + license interfaces.
@nexus-cms/compilerBuild-time transform: auto ids, directives, collection detection, schema emit.
@nexus-cms/reactCmsProvider, override application, overlay editor.
@nexus-cms/nextjswithNexus(), edit-mode handshake, sync + force-update, SEO.
@nexus-cms/clinexus init / generate / watch / check / doctor.
nexus-cms/filamentLaravel/Filament content store + REST API.

Next steps

On this page