Skip to content
Nuxt edition

Nuxt edition

Nuxt 4, Vue 3 and TypeScript, server-rendered — installs, builds and runs on its own: no workspace, no path reaching outside the folder.

Install and build

In nuxt
pnpm install --frozen-lockfile
pnpm run build

pnpm install also runs its postinstall script, nuxt prepare, which writes the type declarations Nuxt needs before anything imports them.

Developing

In nuxt
pnpm dev              # syncs shared/, then Nuxt on :3000
pnpm run generate     # syncs shared/, then a static export
pnpm preview          # serves the build
pnpm run typecheck    # nuxt typecheck

The generated mirror

app/shared/ is written by tools/sync-shared.mjs, which dev and build run first. Editing a file there appears to work and then vanishes at the next sync — edit shared/ at the repository root instead. The favicon is served from that mirror by a route handler (server/routes/brand/favicon.svg.get.ts) rather than copied into public/, so it cannot fall behind the brand builder.