An interactive map application for visualizing F3 Nation's sectors, areas, regions, and AOs. Built with TypeScript, Vite, and Leaflet, it displays organizational boundaries and leadership info using polygons generated from active workout locations.
- Interactive Map: Visualizes F3's organizational structure (sector → area → region → AO) on a modern map UI.
- Drill-down Navigation: Click polygons to drill down through organizational levels.
- Leadership Info: Hover polygons to view leadership positions and contact details.
- Convex Hull Boundaries: Boundaries are generated from the convex hull of active locations.
- Search: Quickly find sectors, areas, or regions by name.
- Responsive Design: Works on desktop and mobile devices.
- Clone the repository:
git clone https://github.com/your-org/f3-sector-map.git cd f3-sector-map - Install dependencies:
npm install
The API base URL is set automatically:
- Local development: Uses
http://localhost:3000/v1(see proxy config in vite.config.ts) - Production (GitHub Pages, etc.): Uses
https://api.f3nation.com/v1 - You can override this by setting the
VITE_API_BASEenvironment variable in a.envfile:VITE_API_BASE=https://api.f3nation.com/v1
npm run devVisit http://localhost:5173 (or the port shown in your terminal).
npm run buildOutput will be in the dist/ folder.
npm run testTests are written with Vitest.
This project is ready for static hosting (e.g., GitHub Pages, Netlify, Vercel).
- Push to the
mainbranch. - GitHub Actions workflow in
.github/workflows/deploy.ymlwill build and deploy to Pages automatically. - Ensure the
baseoption invite.config.tsis set to'./'for correct asset paths.
src/– Main source code (TypeScript, CSS)public/– Static assetsindex.html– App entry pointvite.config.ts– Vite configurationREADME.md– Project documentation
- API errors locally: Make sure your backend is running at
localhost:3000and supports the/v1/org-chartendpoint. - Module not found errors: Run
npm installto ensure all dependencies are installed. - Type errors for Vitest: Ensure
vitestis installed as a dev dependency.
MIT License. See LICENSE if present.