This repository contains the public website for the Lou Gehrig Fan Club (LGFC), implemented as a Next.js application and deployed to Cloudflare Pages using a static export build.
It is also the canonical baseline for future LGFC sites that share the same architecture and governance model.
- Project: Lou Gehrig Fan Club — Public Website
- Framework: Next.js (App Router) with TypeScript
- Hosting: Cloudflare Pages (static export)
- Primary Audience: Fans, visitors, and prospective members at
www.lougehrigfanclub.com - Related Systems:
- Members/Admin area is hosted in a separate repository (Vercel).
- Supabase (database) and Backblaze B2 (media) are part of the wider LGFC architecture and integrated via API from this and other repos.
For contributors working on the LGFC website:
-
PR Process: docs/website-PR-process.md
-
Governance & Rollback: docs/website-PR-governance.md
-
Current Homepage Standard: docs/homepage.html
-
The public-facing homepage and spokes (Weekly Matchup, Milestones, Charities, News & Q&A, Calendar, Join).
-
A strictly controlled deployment pipeline to Cloudflare Pages.
-
A documented design standard that must remain in sync with the code.
For a full visual and functional specification, see:
docs/Design-spec.md(LGFC website design)docs/lgfc-homepage-legacy-v6.html(homepage structure standard)
If you are working on the LGFC website, start here:
-
Getting started & environment setup:
docs/START_HERE.md
-
Deployment details (Cloudflare Pages):
docs/DEPLOYMENT_GUIDE.md
-
Website development process / governance:
docs/website-PR-process.mddocs/website-PR-governance.md
These documents define:
- How to open PRs
- Required checks before merge
- Rollback expectations
- How to keep the implementation aligned with the design spec
If you cloned or used this repository before October 16, 2025, be aware:
A
.envfile containing secrets was accidentally committed in a historical revision and has since been removed.
Any exposed credentials must be considered compromised.
If you used any of those credentials, you must:
- Rotate keys for affected services (Cloudflare, Supabase, B2, etc.).
- Update the secure environment variables in the Cloudflare and GitHub settings as described in
docs/DEPLOYMENT_GUIDE.md.
All current deployments and contributors should assume only the new rotated credentials are valid.
At a high level, this repo provides:
- A Next.js front-end using the App Router and static export.
- A Cloudflare Pages deployment target configured for:
npm run build:cfto generate a static build- Automatic deployment via GitHub Actions when code is merged to
main
- A document-driven design contract:
- Global website design:
docs/Design-spec.md - Homepage standard:
docs/lgfc-homepage-legacy-v6.html(versioned baseline)
- Global website design:
The members/admin application lives in another repo and is hosted separately (typically on Vercel). This repo remains focused on the public site.
This repository is optimized for GitHub Codespaces.
- Click the "Code" → "Open with Codespaces" button in GitHub.
- Follow the instructions in
docs/START_HERE.mdfor:- Git authentication
- Node version management
- First-time setup
If you prefer local development:
-
Install dependencies:
npm install
-
Start the dev server:
npm run dev
-
Open
http://localhost:3000in your browser.
The main homepage entry file is typically src/app/page.tsx. When running npm run dev, changes will live-reload.
This project supports both npm scripts and make commands. Either approach is fine, but Makefile workflows are encouraged for consistency.
npm run dev— Start Next.js development servernpm run build— Build production sitenpm run build:cf— Build static site for Cloudflare Pagesnpm run lint— Run ESLintnpm run lint:fix— Lint and auto-fixnpm run format— Format code with Prettiernpm run typecheck— TypeScript checksnpm run test— Run tests (Vitest)npm run test:watch— Tests in watch modenpm run test:coverage— Tests with coverage
The Makefile wraps common tasks:
make dev— Start dev servermake build— Production buildmake deploy— Deploy to Cloudflare Pagesmake lint— Lint codemake format— Format codemake typecheck— TypeScript checksmake test,make test-watch,make test-coverage— Test workflows
Run make help to see all available commands.
This repository is configured to deploy to Cloudflare Pages when changes are merged into main and the CI pipeline passes.
For complete deployment details (including required GitHub secrets and Cloudflare configuration), see:
docs/DEPLOYMENT_GUIDE.md
In short:
- The build step uses
npm run build:cfto generate a static export. - GitHub Actions takes care of building and publishing to Cloudflare Pages.
- Required secrets (API token, account ID, project name, etc.) must be configured in GitHub.
The LGFC project uses documented design contracts:
-
Overall website design:
docs/Design-spec.md
-
Homepage structure and content order (baseline spec):
docs/lgfc-homepage-legacy-v6.html
Any changes to homepage layout, section order, or major visual structure must:
- Update the relevant spec document.
- Ensure the implementation (e.g.
src/app/page.tsx) aligns with the spec. - Follow the PR governance rules so that drift between design and implementation is minimized.
For contributors working specifically on the LGFC website:
-
PR Process:
docs/website-PR-process.md
-
Governance & Rollback Rules:
docs/website-PR-governance.md
These documents define:
- How to propose changes
- Required checks (lint, tests, visual alignment)
- Rollback and incident handling expectations
- How to keep the repo compliant with LGFC's long-term design and operations strategy
Before opening a PR, make sure you:
- Read
docs/START_HERE.md. - Follow the commit & branch naming guidance in the PR process docs.
- Run the recommended
makeornpmcommands (lint, typecheck, tests) locally or in Codespaces.
This repository is part of the Lou Gehrig Fan Club project and is intended for use in building and maintaining the LGFC public website.
If you are evaluating this as a "starter template," treat it as a reference implementation rather than a generic drop-in boilerplate, and be aware that some documentation and workflows are specifically tailored to the LGFC environment.