Developers
The Zone owns the layout. The platform owns the data and rules.
A Zone is a community’s own site and can include custom presentation code. The code handles layout only. The platform reads and provides the data, and keeps control of permissions and review.
Theme
Start with settings, then write code
Each Zone starts with a default theme. Adjust its density, page background, and cover ratio. If needed, change its accent color, then arrange modules such as a featured carousel, bookshelf, rankings, and curated lists. Use presentation code only for layouts the settings cannot create.

Settings
A theme configuration
const tokens: ZoneTokens = {
colorScheme: 'system',
accent: '#3b4a5a',
density: 'comfortable',
cardRadius: 'md',
headingFontScale: 'md',
surfaceTint: 'subtle',
fontPairing: 'serif',
pageSurface: 'flat',
coverStyle: 'portrait',
};Slots
Code fills named slots
Presentation code is a package that supplies custom components to named slots such as the header, hero, search bar, data panels, work cards, modules, and footer. Each slot receives the platform version, which the package can wrap or replace.
export default defineZonePackage({
slug: 'anime',
css,
catalogue: { count: 'episodes',
formatNames: animeFormatNames
},
slots: {
browseHeader:
AnimeBrowseHeader,
workCard: AnimeCard,
cataloguePanel:
AnimeCataloguePanel,
footer: AnimeFooter,
},
});Boundaries
Package boundaries
No data fetching
The platform reads data and sends it to each slot. The package makes no requests.
No credential access
The package cannot read cookies, browser storage, or credentials.
Platform controls stay visible
Account and Zone menus, reporting, and age checks stay outside the slots. Every work keeps its “Why this is here” label.
Styles stay within the Zone
Styles are scoped to the Zone. Colors and fonts use only variables provided by the platform.
Size limits
Compressed CSS is limited to 40 KiB and JavaScript to 50 KiB.
Release
From review to release
Calculate a hash
All package files produce one hash. Changing a single byte changes the hash.
Get an independent review
A different account checks the source code, built files, accessibility, and failure behavior, then records the decision and evidence hash.
Enable with an expiry date
Only reviewed versions can be enabled, and each has an expiry date. Rolling back to an older version does not restore its old approval.
Return to the standard layout
If the hash does not match, the standard layout appears. Readers can disable the package, add ?safe to the URL to use safe mode, or rely on the platform-wide switch.
One backend, your choice of frontend; AI agents can read the same data.
A new community site does not need a new backend. Presentation code reads only the public API and contains no business logic. Anything a Zone displays is also available through the API.
Developers
More pages
- API and SDKSafe retries for writes, with fixed error codes
- MCP serverAI agents connect at /mcp and see tools allowed by their permissions
- Connected appsAuthorize with OAuth and revoke access at any time
- Wiki toolkitExtract on your computer and send only proposals
- Open sourceAGPL-3.0 platform, Apache-2.0 standalone packages
Build your tools on one API.
Use your own code to read and write works, library entries, and community data. Every operation follows REZICS identity and authorization rules.