Automated Solar Farm Site Assessment Tool
SolarScout is a geospatial analysis application that identifies and evaluates potential solar farm locations using OpenStreetMap data. The tool combines land-use analysis, exclusion zone filtering, and grid infrastructure proximity to generate a list of suitable sites.
Backend:
- FastAPI: RESTful API with async support
- PostgreSQL + PostGIS: Spatial database for geospatial operations
- osm2pgsql: OpenStreetMap data import pipeline
- asyncpg: Asynchronous database driver
Frontend:
- Vue.js 3 (Composition API): Reactive UI framework
- MapLibre GL JS: High-performance vector map rendering
Infrastructure:
- Docker Compose: Multi-container orchestration
- Geofabrik OSM Extracts: Regional OpenStreetMap data source
-
Data Preparation (
prepare_data.sql):- Extracts candidate parcels (landuse: farmland, meadow, farm)
- Generates exclusion zones from residential, natural, and protected areas
- Indexes power grid infrastructure (transmission lines, cables)
- Transforms all geometries to EPSG:25832 (UTM Zone 32N)
-
Spatial Analysis (
analyze_sitesfunction):- Buffers exclusion zones by configurable distance
- Performs geometric difference to cut out forbidden areas
- Filters results by minimum area threshold
- Calculates distance to nearest grid connection
- Scores and ranks sites based on area and grid proximity
-
Output: GeoJSON FeatureCollection with properties:
original_area_ha: Pre-filtering parcel sizesuitable_area_ha: Post-exclusion usable areagrid_distance_m: Distance to nearest power infrastructure