Home
Role
Founder, data engineering, front end
Stack
Leaflet, vanilla JS, Python + pandas for data prep
Data
Minnesota DNR lake metadata, fish catch and length surveys
Year
2025

OVERVIEW

Minnesota is the land of 10,000 lakes, and I wanted to see all of them at once. Minnesota Lakes on Chain is an interactive map of every lake in the state, with the Department of Natural Resources’ own data on each one: area, max depth, shoreline length, and which fish are actually in it.

It’s also the start of something bigger: an app that lets you collect lakes, rewards people for fishing and verifying their catches, and pipes that data back to the Minnesota DNR, creating a public good for the state. In September 2025 the project signed its first sponsor.

Lake detail for Little Cascade in Cook County
Lake detail: Little Cascade in Cook County, with area, depth, shoreline, DOW number and fish survey data.

FEATURES

THE DATA

The DNR publishes its lake data as a pile of spreadsheets and geopackages: 2024 lake metadata, a statewide catch file, fish length surveys, sentinel and border-water lists, and county borders. I wrote Python preprocessing scripts that join them on lake ID, remove duplicate fish records and output one consolidated dataset the browser loads directly, with no backend.

Early version of the Minnesota Lakes Explorer
January 2025: the first version, a 10,000-lake visualization.
Walkthrough of the explorer and the vision for verified catches (May 2025).

More Projects