This tutorial uses PRISM file-based routing: every folder under src/app/ becomes a URL, with nested layouts and server-side loaders.
Read the routing docs →Components come from bext/ui — a faithful shadcn/ui port for bext and PRISM, styled through route_css tokens.
Explore bext/ui →Derive the header title from the active route so it's never out of sync.
A header that always says "Dashboard" gets stale fast. Since the layout already knows the active nav item, reuse it for the header title — one source of truth.
const title = NAV.find((n) => active(path, n.href))?.label ?? "Dashboard";
<header className="hd">
<h1>{title}</h1>
</header>Navigate around the preview — the header title tracks the route. For SEO, set the document title too with generateMetadata on each page:
export function generateMetadata() {
return { title: "Products — Acme Admin" };
}