A web dashboard for monitoring tagged trees, mapped areas, and ranger activity.
- Splash Screen
- Map View
- Tagged Trees
- Areas
- Active Ranger
- Interactive map dashboard with KPI cards and detail panels
- Tagged Trees directory with status, DBH, survival, locate, and delete actions
- Tagged Areas directory with progress tracking and boundary stats
- Rangers directory pulled from Firestore
userscollection (excluding admins) - Search/filter controls in the sidebar
- Theme support (light, dark, system)
- React + TypeScript + Vite
- Tailwind CSS
- Zustand
- Firebase Firestore
- React Router
- Leaflet / React-Leaflet
/Map View (Dashboard)/treesTagged Trees/areasTagged Areas/rangersActive Rangers/settingsSettings
- Install dependencies:
npm install- Start local development server:
npm run dev- Build for production:
npm run build- Preview production build:
npm run previewCreate a .env.local file in the project root and provide:
VITE_FIREBASE_API_KEYVITE_FIREBASE_AUTH_DOMAINVITE_FIREBASE_PROJECT_IDVITE_FIREBASE_STORAGE_BUCKETVITE_FIREBASE_MESSAGING_SENDER_IDVITE_FIREBASE_APP_IDVITE_FIREBASE_MEASUREMENT_ID(optional)VITE_ADMIN_EMAILS(optional, comma-separated)
See .env.example for the template.
Firestore collections used by the app:
treestagAreasusers
- Static assets such as logos or screenshots can be placed in
public/. - The sidebar logo currently uses
public/icon.png.