Context
Ship the site/ SPA on Cloudflare Pages. Depends on #14 building.
What to build
- Cloudflare Pages project connected to this repo:
- Root directory:
site
- Build command:
npm run build
- Output directory:
dist
- Env vars (Production + Preview):
VITE_SUPABASE_URL, VITE_SUPABASE_ANON_KEY (anon key only — never the service key).
- Auto-deploy on push to
main; preview deploys on PRs.
- SPA routing: Vite output is a single page, so default Pages behavior is fine (add
_redirects with /* /index.html 200 only if client routing is added later).
- Custom domain matching the repo name (e.g.
hackhq.\*) — can be a follow-up.
Acceptance
Part of #10 · Design spec · Repo data lives in .github/scripts/listings.json
Context
Ship the
site/SPA on Cloudflare Pages. Depends on #14 building.What to build
sitenpm run builddistVITE_SUPABASE_URL,VITE_SUPABASE_ANON_KEY(anon key only — never the service key).main; preview deploys on PRs._redirectswith/* /index.html 200only if client routing is added later).hackhq.\*) — can be a follow-up.Acceptance
site/and servesdistDepends on: Frontend: Scaffold Vite + React + TS + Tailwind app (site/) #14, Backend: Supabase
hackathonstable + RLS read policy #11, Infra: Cloudflare Pages deployment + Supabase env + domain #20-data from Backend: Sync GitHub Action (listings.json → geocode → Supabase upsert) #13Part of #10 · Design spec · Repo data lives in
.github/scripts/listings.json