Standalone Next.js/TinaCMS repo extracted from the Vector monorepo.
Cloudflare deploys build the Tina admin bundle locally before the OpenNext build. Generated admin files are not committed.
pnpm build works without Tina credentials and renders the press index empty when they are absent.
- Node.js 22.16.0
- pnpm 11.7.0
pnpm install
# PowerShell
Copy-Item .env.example .env.local
# cmd.exe
copy .env.example .env.local
pnpm devNEXT_PUBLIC_TINA_CLIENT_ID: Tina public client IDTINA_TOKEN: Tina read/build tokenSUPABASE_URL: Supabase project URL for/api/subscribeSUPABASE_PUBLISHABLE_KEY: Preferred Supabase publishable key for/api/subscribeSUPABASE_ANON_KEY: Legacy fallback Supabase anon key for/api/subscribeHUBSPOT_ACCESS_TOKEN: HubSpot token for/api/newsletter
pnpm dev: run Tina local dev + Next.jspnpm build: build the Next.js app onlypnpm build:admin: generate the Tina admin bundle inpublic/adminpnpm build:admin -- --skip-cloud-checks: generate the Tina admin bundle without validating TinaCloud credentialspnpm lint: run ESLintpnpm start: start the production server