Interactive hexagonal visualization of wind turbine installations using MapLibre GL JS and H3 hexagonal indexing.
- 🗺️ Multi-resolution hexagon aggregation - Seamlessly transitions between zoom levels
- 🌬️ Wind capacity visualization - Color-coded by total MW per hexagon
- 📍 Individual turbine exploration - Zoom in to see detailed turbine information
- 🌍 Multiple regions - US, Germany, UK, and EU data
- 📱 Responsive design - Works on desktop and mobile
cd react-app
npm install
npm run devOpen http://localhost:5173 in your browser.
The app currently uses synthesized data based on real wind farm locations. The synthesis uses:
- Actual wind farm cluster locations from each region
- Realistic turbine specifications (manufacturers, models, capacities)
- Gaussian distribution around cluster centers for realistic spatial patterns
For US data, you can download the USGS Wind Turbine Database:
- Visit https://eerscmap.usgs.gov/uswtdb/data/
- Download the CSV file
- Place it in
public/data/uswtdb.csv - Modify
dataService.tsto load the CSV using PapaParse
For European data, sources include:
- The Wind Power Database
- Open Power System Data
- National grid operator datasets
- Push your code to the
mainbranch - Go to repository Settings → Pages
- Set Source to "GitHub Actions"
- The workflow will automatically build and deploy
cd react-app
npm run build
npm run deploy- React 18 + TypeScript
- Vite for fast development and building
- MapLibre GL JS for map rendering
- H3-js for hexagonal spatial indexing
- CARTO basemap (free, no API key needed)
Edit vite.config.ts to change the base path for deployment:
export default defineConfig({
base: '/your-repo-name/',
})react-app/
├── src/
│ ├── App.tsx # Main map component
│ ├── types.ts # TypeScript interfaces
│ ├── dataService.ts # Data synthesis & loading
│ ├── h3Utils.ts # H3 hexagon utilities
│ ├── index.css # Styles
│ └── main.tsx # Entry point
├── public/
│ └── wind-turbine.svg # Favicon
└── package.json
MIT