About this starter
This site is the basic-blog template that ships with zfb. Pages are server-rendered to static HTML at build time; the only JavaScript that reaches the browser is the theme toggle in the header, because it is the only component marked "use client".
Where things live
- pages/
- Routes. One file per URL;
[slug].tsxexpands via itspaths()export. - layouts/
- Shared HTML shell — <head>, header, footer, the theme bootstrap.
- components/
- Plain components, plus the one
"use client"island. - content/blog/
- The
blogcollection. Markdown and MDX files with frontmatter. - styles/
- Tailwind entry, theme tokens, and the
.prosemarkdown styles. - lib/
- Types shared between routes.
- mdx-components.tsx
- Project-wide component map applied to every rendered entry.
- zfb.config.ts
- Framework, collections + schema, and the markdown features.
Commands
zfb dev— dev server with live reloadzfb build— static build intodist/zfb preview— serve the built outputzfb check— TypeScript + content-schema check