Map Portfolio
A collection of interactive web maps built with modern GIS and web mapping technologies. Most of these were created as part of the 30 Day Map Challenge -- a daily mapping initiative where each day has a different theme.
30DayMapChallenge 2026
A new map every day in November 2026. Each one starts with a question and some analysis, built with cloud-optimized point clouds, rasters and vector tiles served directly from object storage.
Eastern Meadowlark Nesting Sites
Interactive field tool mapping EAME nesting sites, CDL hay/pasture and corn fields across the CT River valley from Vernon VT to Claremont NH.
Where your cash works, coast to coast
Type your cash. 38,839 hexagons recolor by the share of people living in a ZIP where a rental cash flows today. Past about $120,000 the map stops changing.
What to clear
The trees that shade the Day 01 field, clustered into clearing zones a surveyor can stake, cut down to the strips whose shadow lands on the field, with the creek trees kept.
Who sees the panels
A viewshed from all 350 homes within a mile of the Phoebus demo layout across the lidar surface, trees and all: 34 see any panel, against 297 on bare ground.
Every house in 1920
The 1920 USDA soil map of Marengo County over the Phoebus ground, then today under it: 550 houses on the old sheet and 77 with a building there now, most of the 1920 roads still roads, and a spyglass that shows the old sheet anywhere on today.
A state in a second
Every acre of Alabama, 1.3 million H3 cells, goes through a siting screen in the browser, and one click swaps the rules for solar, wind, a data center campus or land to option. DuckDB reruns the whole state on every change and finds the largest block that passes; the same screen runs on one county or on all 48 states.
Where rural ends for a 640 ft turbine
One number screens out land before any other constraint runs: above 19 structures per km2, a 1,276 ft home setback leaves under 1 percent of a 1 km cell, measured over every GHSL cell in five Sand Mountain counties. All 245 built turbines in six Southeast USWTDB projects stand in cells below that line, and moving the ordinance from 2x to 3x tip height takes 40 percent of the turbine land that remains.
The turbines at 2 am
Crowned Ridge Wind, South Dakota, from its public PUC filings: 87 turbines and 137 homes run through ISO 9613-2. At full sound power 6 non-participating homes go over 45 dBA; the PUC had 16 turbines shut above 6 m/s, and a greedy planner clears every home with 7. Click a home and the frequency and distance plots move to it.
The line at the gate
The Phoebus demo layout asks for about 528 MWac on a 230 kV line 13 miles away. The map and chart show who is already queued within 60 miles, how few Southeast requests ever reach operation and how long they take, and how much of one circuit Phoebus would fill.
Cut a tree, lose a neighbor
Cut the trees around the Phoebus demo layout or plant a hedgerow, and the browser reruns the line of sight from 350 homes and the December shade on the 2 m lidar surface, only for the rays the edit touches.
Points
Colorado Oil & Gas Infrastructure - Wells, Pits, and Tank Batteries
Lines
Wind Turbines & Electric Grid Infrastructure - Analyzing proximity to transmission lines and substations
Polygons
Bird Habitats & Wind Energy - Analyzing 15 protected species habitats and turbine locations across Colorado
My Data
Wy'east Trailfest 50K - 3D cinematic replay of an ultra marathon race with 7,805 ft elevation gain near Mt. Hood
Earth
Submarine Telecommunication Cables - 448 active cables spanning 1.2 million km connecting the world beneath the ocean
Dimensions
Multi-scale 3D visualization of US wind energy by state and county
Accessibility
Global Electricity Access 2023 - Interactive 3D visualization with dual extrusion modes comparing percentage vs. population without electricity
Urban
3.5M point LIDAR comparison of Canary Wharf: 3D buildings vs raw point cloud with real-time analytics
Analog
Hand-drawn georeferenced map of the Presidio of San Francisco with interactive geolocation
Air
Wind Speed Vertical Profile - 76,051 US wind turbines with NREL wind data across 6 height levels (80-200m)
Minimal
Major Rivers of the United States - 778k perennial river segments rendered with minimal design
Map from 2125
The Fire Adapted Continent - Speculative wildfire visualization with AI-powered fire risk prediction
10 Minute Map
Global 10-minute coordinate graticules displayed on a 3D globe with 2,746 latitude/longitude grid lines
OpenStreetMap
Protected Areas at Risk - 65,549 OSM protected areas overlaid with wildfire risk zones
Fire
Dixie Fire 2021 - Interactive 3D terrain visualization of California's largest single wildfire at 963,309 acres
Cell
California microwave tower network with interactive Voronoi tessellation showing FCC towers as service cells
A New Tool
Global Earthquakes - Full Kepler.gl experience with USGS data from past year (M2.5+, 20,000 earthquakes)
Out of This World
Moon Globe - Interactive 3D visualization with auto-rotating lunar globe and Apollo landing sites
Projections
Alaska Distortion Comparison - 4 synchronized maps showing Mercator, Albers, Equal Earth, and Winkel Tripel
Water
Lake Shasta Water Level Timeline - Drought and recovery (2014-2024) using Landsat imagery and NDWI
Icons
Icon Language World Map - 21,000+ power plants and 6,000+ airports represented entirely through icons
Natural Earth
Earth Breathing - Animated biome visualization using Natural Earth 1:10m data on an auto-rotating 3D globe
Technologies
- Mapbox GL JS
- PostgreSQL / PostGIS
- Python / GDAL
- GeoJSON
- Responsive design