# next-zones **Zones for Next.js.** Build each part of a product as its own Next app, a *zone*, with its own version. Serve them as one app: one origin, soft navigation between zones' App Router pages, one React. A new version of a zone can be loaded into the running server without a restart. > **Status: pre-release.** It targets Next.js **16.4.0** and **16.3.8** (and 16.3.6, 16.3.7), App Router and Pages Router, production server. > - **Available:** > - the zone declaration (`zoneConfig`); > - the CLI: `init`, `add`, `check`, `doctor`, `dev`, `build`, `start`, `serve`, `install`, `pack`, `pull`, `prune`, > `watch`; > - Zones (`createZones`), which installs and swaps zones at run time; > - one combined build of every zone (`mode: "single"`, the composer); > - ``; > - metrics: Zones' own and any zone's, as Prometheus text (`@runsnip/next-zones/metrics`). ## Why Next.js has [Multi-Zones](https://nextjs.org/docs/app/guides/multi-zones): - every zone is a separate server; - moving between zones reloads the page and drops client state. next-zones keeps the separation (each zone builds, versions and deploys on its own) without those costs: | | Next Multi-Zones | next-zones | |---|---|---| | Moving between zones | hard navigation | **soft** `` navigation between App Router pages; client state kept | | Servers | one per zone | **one** for all zones | | A module shared by zones | loaded once per zone | loaded **once** | | Releasing a zone | redeploy its server | **install it live**, roll back in milliseconds | ## Pages 1. [Concepts](concepts.md): zones, the shell, mounts, aliases, versions 2. [Getting started](getting-started.md) 3. [Configuration: `zoneConfig`](configuration.md) 4. [CLI](cli.md): every command 5. [Root URLs: aliases](aliases.md) 6. [Routing rules: a zone's headers, redirects and rewrites](routing-rules.md) 7. [Instrumentation](instrumentation.md) 8. [Assets: fonts, images, public files](assets.md) 9. [Live updates and requirements](updates.md) 10. [Zones: live installs](zones.md) 11. [Metrics](metrics.md) 12. [Zones on the Pages Router](pages-router.md) 13. [What is supported](support.md) ## For assistants The package ships `llms.txt` (the essentials) and `llms-full.txt` (every page above in one file), and a skill for coding assistants, `skills/next-zones/SKILL.md`: copy its folder into a project's skills folder (for Claude Code, `.claude/skills/`) so an assistant reads those files before it answers. ## License Apache-2.0.