/content is the editorial toolbox for the WordPress-backed public site. The
hub page (page.tsx) links five tools as cards; everything in the subtree
shares one read gate, with write/publish clearance enforced per tool and API.
| Route | Purpose | Guard |
|---|---|---|
/content | Hub — links to the five tools | org:content:view (layout.tsx) |
/content/snippet-generator | Build copy-paste WordPress block snippets with live preview | org:content:view |
/content/site-banner | Global notification / emergency / promo banner settings | org:content:view |
/content/categories | Blog category and taxonomy management | org:content:view |
/content/downloads | CMS media files served from the matters.ai/downloads root | org:content:view |
/content/master-downloader | Download raw (master) Mux video as MP4 for offline editing/archiving | org:content:view |
/content/create | Post-creation flow (styles in styles.css) | org:content:view |
The subtree gate lives in
layout.tsx
via requirePermission("org:content:view"); the categories and
snippet-generator pages re-assert the same permission at page level.
| Source | Purpose |
|---|---|
| WordPress REST API | Categories, post bodies, banner content |
| Mux API | Master video downloads |
| MongoDB | Downloads registry and tool state |
Shared building blocks live alongside the routes: types.ts (block data/toggle
interfaces), constants.ts (icons/labels), utils/ (generator logic,
snippet-config serialisation), and components/generators/ (one form per
snippet block type).
Deep-dived at Snippet Generators: the 20-block
catalog, the generator-HTML → BlogContent parser hand-off, round-trip
import/edit via embedded config comments, and how to add a block.