Get started
Clone the repository, install it, check the machine with the doctor, run the dev server, and work beside other sessions in a worktree.
Run the site
git clone --filter=blob:none https://github.com/Kevin-Liu-01/Prototemplate.git
cd Prototemplate
pnpm install
pnpm run doctor
git config core.hooksPath .githooks
pnpm dev--filter=blob:nonemakes a blobless clone. The history holds large reference captures, and a blobless clone downloads an old file's contents only when a command reads it.pnpm installalso writes.source/, the compiled docs collection these pages are built from (fumadocs-mdx, run as the install's postinstall step).pnpm run doctorchecks Node at the.nvmrcmajor, pnpm atpackage.json'spackageManager, the installed packages, the Chrome for Testing build the browser tools launch (pnpm exec playwright-core install chromium, orCHROME_PATH), and Python 3 with the packages inrequirements.txt. ffmpeg and the HyperFrames CLI are optional; only the films need them. Each missing item prints the command that fixes it. Writepnpm run doctor: a barepnpm doctorruns pnpm's own command.- The pre-push hook in
.githooks/runspnpm lint:publicand stops a push on any finding: a key shape, a machine path or, withPT_DENYLISTset, a term from the private denylist. pnpm devserves the site athttp://localhost:3005.
Work beside other sessions
Several agent sessions work in one checkout on Kevin's machine. A lane of work runs in its own git worktree, on its own branch and its own port, so no two sessions compile in the same .next folder:
git worktree add -b k/my-lane ../Prototemplate-wt-my-lane origin/main
cd ../Prototemplate-wt-my-lane
pnpm install --frozen-lockfile
pnpm exec next dev --turbopack --port 3022- Stage explicit paths and commit with a pathspec. Never run
git add -Aorgit add .:motion/belongs to the Videos session and stays untracked. - Never stop the shared server on 3005, and never build in the shared
.next. - The multi-session playbook holds the rules for lanes, collisions and resuming.
The repository map
| Folder | What it holds |
|---|---|
src/app | One folder per route: the gallery, /brand, /docs, /handbook, /skills, /motion, /d/<slug> and the rest |
src/components | viewer (the shell), shared, shell, plate (the sign-in port), book (the handbook's renderer) and docs (this site's parts) |
src/lib | Registries, generated data, the engines, and seo/, the SEO system |
scripts | lib, lint, check, build, skills and media; Scripts and generated files covers them |
content | docs/ (these pages), blog/ and authors/ |
deck | The brand deck's slides and parts |
graphics | The illustration toolchain |
skills | The curated skills, one folder each |
docs | The handbook, the ship loop, the libraries index, the graphics pipeline and the tools index |
public | Captures, thumbnails, fonts, media and the built deck |
AGENTS.md at the root is the agent's entry point, and README.md, ARCHITECTURE.md, DESIGN.md and BRAND.md hold the routes, the code map, the visual laws and the identity.
What Prototemplate is
Prototemplate is Kevin Liu's hub and working wiki for General Translation work: what it holds, who reads it and the order to read it in.
Pages and the viewer shell
Every route and what it holds, the viewer shell that frames most of them, the book page standard, and the registries a new page touches.