Every brand site, built from the same blocks

Signet gives a group of brands one shared block library and one deployment pipeline. Each site looks like itself — because the brand is a token pack, not a fork.

What the rebuild replaces

15
Shared blocks

One library, every brand site

4
Storage providers

Azure, S3, GCS or local

1
Artefact per deploy

Immutable, traceable to a commit

0
Writable app files

The runtime cannot rewrite itself

Built for brand teams and the agents that serve them

The block library is the design system. Everything below ships with every site.

Agent-buildable

Every block carries a machine-readable spec, so an agent can compose a page the same way an editor would.

Immutable runtime

Code ships as a signed container image. Nothing on the server can rewrite itself — the injection problem disappears.

One library, many brands

Add a brand as a token pack. The blocks restyle themselves; nobody forks a component.

Media that lives elsewhere

Assets are served from object storage behind short-lived signed URLs, never from the web root.

Governed publishing

Landing pages route through an approval queue, and the control plane always fails safe.

Minutes, not weeks

A new brand site starts as a fork and a brand pack, not a new codebase.

How a site gets built

The same three steps whether a person or an agent is driving.

1 — Fork and brand

Copy the repo, drop in a brand pack: colours, type, logo, tagline. The tokens are stamped into the build.

2 — Compose from blocks

Pages are assembled from the shared library. Agents read the block manifest and write valid content directly.

3 — Ship one artefact

CI builds a single image, the platform deploys it, and the control plane records exactly what is running.

Brand token packs restyling the shared block library

The brand is configuration, not a fork

A brand pack is a small file of design tokens plus an identity: colours, radii, type weights, logo and tagline.

Swap the pack and every block in the library restyles itself — the same hero, the same card grid, a different company. No component is ever duplicated per brand, so a fix lands everywhere at once.

From WordPress estate to Signet

Why this platform exists.

  1. Before

    Many sites, no control plane

    Every brand site was administered by hand, dependencies lived in git with no manifest, and nobody could say which commit was live.

  2. Step 1

    One shared library

    Fifty-seven ad-hoc blocks became a single reviewed set, documented for both editors and agents.

  3. Step 2

    Immutable delivery

    Each app ships as a container built in CI. The filesystem is read-only, so a compromise cannot persist.

  4. Now

    Fleet governance

    Sites register with the DXP, heartbeat their version, and route landing pages through approval.

Why teams move

"The blocks are the design system. When we fix one, every brand site gets the fix on its next deploy."
Platform teamEngineering at Appstrax
"A new brand used to mean a new build. Now it means a brand pack and a deploy."
Brand marketingMarketing at Group brands

Common questions

Can editors still change pages themselves?

Yes. Pages are composed from the block library in the CMS admin, with the same blocks agents use. Nothing is hard-coded per page.

What happens if the control plane goes down?

Nothing. Approval and heartbeats are advisory and fire-and-forget — a site keeps serving and keeps publishing if the DXP is unreachable.

Where do images and documents live?

In the DAM, backed by object storage. The site receives short-lived signed URLs, so binary content never sits in the application root.

How is a new customer onboarded?

Fork the repo, add a brand pack, point the capsules at it. The platform code is identical across customers by design.

Want this for your brands?

We will walk you through the block library, the brand system and the deployment model.