The website lives in web/ and is built with Next.js App Router.
cd web
npm install
cp .env.example .env.local
npm run devOpen http://localhost:3000. Copy the env example only on first setup; keep existing local values. Node.js 24.19.0 or newer within major 24 is required.
Run these commands from the repository root:
npm run lint --prefix web
npm test --prefix web
npm run build --prefix webKeep the existing Vercel project that owns the production domains; do not import a replacement
project or move DNS. Use Root Directory web and Framework Preset Next.js.
Follow the deployment and rollback checklist.
Set environment variables in Vercel separately for Preview and Production. .env.local stays
local, and .env.example is documentation, not automatic Vercel configuration.
See Fienta ticket setup to enable ticket cards and the shop link.
VS Code runs ESLint from web/. The root Prettier and Markdownlint settings are retained for the
recommended editor extensions; there is no npm formatting script or lint-staged/Commitlint hook.
├── web/ # Next.js website
├── cloudflare/schedule-stats/ # Optional schedule statistics Worker
└── docs/ # Project documentation