# Ship every market from one content model

Next Story is a headless CMS demo. Every section on this page is a Storyblok block that editors change without a deploy.

One content model, from draft to published pages in English and German.

[How it works](/how-it-works)

[See the blocks](/blocks)

## Explore the page, then its building blocks

This project grows one block at a time. The block library shows each section on its own, so you can see how the pages fit together.

![Watercolor wireframe sketches showing reusable sections in website layouts](https://images.unsplash.com/photo-1522542550221-31fd19575a2d?auto=format&fit=crop&w=1600&h=840&q=85)

Hal Gatewood / Unsplash: https://unsplash.com/photos/watercolor-wireframe-sketches-of-website-layouts-tZc3vjPCk-Q

[Explore the blocks](/blocks)

## What this demo proves

### Editors own the page

Copy, section order, and SEO fields live in Storyblok. New sections are React components, not CMS plugins.

[Editors own the page](/blocks)

### Preview before publish

The Visual Editor shows drafts on the real site through Next.js draft mode.

[Preview before publish](/how-it-works)

### Publish refreshes the cache

A Storyblok webhook expires the changed story in both languages. A new headline needs no redeploy.

[Publish refreshes the cache](/how-it-works)

### Two languages, one model

Translatable fields serve the German routes from the same stories.

[Two languages, one model](/de)

## What changes in the CMS, what changes in code

Editors work with the blocks developers provide. The content model connects both sides.

Content and component ownership

| Task | Editor in Storyblok | Developer in the repository |
| --- | --- | --- |
| Copy and translations | Edit fields and publish | No deploy needed |
| Arrange sections | Reorder existing blocks | Define allowed blocks in the schema |
| Add a new block | Use the available block | Add the schema, React component, and tests |

## See how this page is built

Follow a Storyblok block from the content model to the published page.

[How it works](/how-it-works)

Canonical: https://nextstory.marcopontili.com/
Content source: storyblok; published representation.
