Home
Chase Teichmann Request an intro

Maps

FishLog: a fishing journal for Maryland

My friends and I log every catch on a map, with the weather at that place and hour saved automatically.

30 Species with Maryland size and creel limits

Company
Personal project
Role
Solo project
Period
2026
Stack
React · Leaflet · OpenStreetMap · Python · AWS Chalice · Lambda · MySQL · S3 · Open-Meteo

“Add to cart” takes you to the store with this project in your cart.

Why I built it

I’m an avid fisherman, and I wanted one place where my friends and I could log our catches, track the conditions we caught them in, and compete.

What it does

  • JournalCatches, spots, and gear, with the temperature, wind, and moon phase saved for each catch.
  • RegulationsSize and creel limits for 30 Maryland species, shown next to each one and imported automatically from Maryland DNR.
  • LeaderboardBiggest fish per species, most catches, and most species, with filters.
  • ProfilesA public profile for each angler.

How it’s built

React and React Leaflet over OpenStreetMap tiles on the front end; a Python API on AWS Chalice (Lambda and API Gateway) with MySQL on RDS.

The weather is saved with the catch, so the log never depends on a weather API later. Geocoding (OpenStreetMap’s Nominatim) and weather (Open-Meteo) need no API keys. Photos go from the browser straight to S3 through presigned URLs, so the API never streams image bytes, and iPhone HEIC photos are converted to JPEG in a Lambda.

The hard part

Keeping the map, the catch list, and the filters in agreement. Change a filter or move the map, and all three have to update together.