Collections

Build a content block once. Embed it across every site.

Widgets and collections are reusable content units. Update centrally, republish once, and every embed reflects the change — in staging or production.

Collections documentation

Shared vs. embedded

RuleCMS supports both centralized updates and per-widget independence.

Shared collections

Reference a collection from multiple widgets. Update and republish once at the central place — every widget referencing it updates in that environment.

Embedded collections

Copy a collection into a widget when you need independent versioning. Teams choose shared vs. embedded based on their content model.

Delivery surfaces

Embed published content wherever your users are — web apps, marketing sites, or internal tools.

  • Headless content API for any framework or language
  • Hosted render pages for zero-code embeds
  • @rulecms/widget-react React SDK
  • Integration guides for popular JavaScript frameworks

Embed with the React SDK

import { RuleCMSWidget } from "@rulecms/widget-react";

export function HomepageHero() {
  return (
    <RuleCMSWidget
      publishedKey="your-widget-key"
      apiToken="your-environment-token"
    />
  );
}

Prefer fully headless? Use the content API instead — the universal integration path for any framework:

// Fetch published widget content via the headless API
const widget = await fetchPublishedWidget({
  publishedKey: "your-widget-key",
  apiToken: "your-environment-token",
});

// Returns published JSON ready to render in any framework

Update the homepage banner across all your sites in one publish. Learn more in the collections documentation and the developer guide.

Explore RuleCMS

Dive deeper into what makes RuleCMS different.

Create once. Embed everywhere.

Reusable collections with central republish — no duplicate content management.