The pauseai.uk website — a Next.js (App Router) app deployed to Netlify.
- Next.js 16 (App Router) with React 19 and TypeScript
- Self-hosted Inter (
next/font/local+@font-face) and Google-hosted Lato (next/font/google) - Deployed to Netlify via
@netlify/plugin-nextjs
app/— routes, layouts, and per-route CSS (App Router)components/— shared React componentslib/data/— typed content modules; shared config (social links, emails, GA ID, external URLs) is inlib/data/site.tspublic/— static assets (fonts/,images/,pdfs/, favicons)
npm install
npm run dev # Next dev server (Turbopack) at http://localhost:3000
npm run build # Production build
npm run lint # ESLintSee package.json for the full script list, including the lighthouse* scripts.
- Events are fetched at request time from the Luma calendar API (
lib/data/events.ts), not hardcoded. - Donations use prebuilt Stripe payment links hardcoded in
components/DonateForm.tsx— there is no payment backend. - Fonts are committed as woff2 in
public/fonts/, so there is no font download/build step after cloning. public/CNAMEis a leftover from the old GitHub Pages setup. Netlify ignores it; the domain is managed in the Netlify dashboard.
Netlify, configured in netlify.toml (build npm run build, publish .next, Node 22). Pushes to the default branch deploy to production; pull requests get deploy previews automatically.