A modern, interactive map dashboard built with React and Vite. This project provides a user-friendly interface for visualizing and interacting with geospatial data layers.
- Interactive map visualization with Leaflet
- Dark mode support
- Layer controls for toggling map data
- Custom UI components (Button, CheckBox)
- Responsive layout and styling
- Mock data for development and testing
- Modular component structure
- Node.js (v20 or higher recommended)
- pnpm (v9 or higher)
-
Clone the repository:
git clone https://github.com/OpenSourceFellows/map-dashboard.git cd map-dashboard -
Install dependencies:
pnpm install
-
Optional: For full development setup, you may also need the companion backend server:
git clone https://github.com/OpenSourceFellows/dashboard-server.git
See the dashboard-server repository for backend setup instructions.
Start the development server:
pnpm run devThe app will be available at http://localhost:5173 by default.
Build for production:
pnpm run buildPreview production build:
pnpm run previewRun linter:
pnpm run lintmap-dashboard/
βββ public/ # Static assets
βββ src/ # Source code
β βββ components/ # UI and map components
β β βββ Layout/ # Header and layout components
β β βββ Map/ # Map-related components
β β βββ UI/ # Reusable UI components
β βββ data/ # Mock data
β βββ hooks/ # Custom React hooks
β βββ styles/ # CSS files
β βββ types/ # TypeScript types
β βββ utils/ # Utility functions
β βββ App.tsx # Main app component
β βββ main.tsx # Entry point
βββ package.json # Project metadata and scripts
βββ vite.config.ts # Vite configuration
βββ README.md # Project documentation
- React β UI library
- Vite β Fast build tool
- TypeScript β Type safety
- Leaflet β Interactive maps
- React Leaflet β React components for Leaflet
- ESLint β Linting
Headerβ App title and navigationMapContainerβ Interactive Leaflet map with markers and polygonsLayerControlsβ Toggle map layers and data typesMapLegendβ Map legend displayCheckBoxβ UI checkbox component
- CONTRIBUTING.md - Contribution guidelines
- LICENSE.md - License information
- docs/MAINTAINER.md - Maintainer guide
- docs/QGIS_ATTRIBUTE_PRESERVATION.md - QGIS data layer documentation
