Theodore Roosevelt Presidential Library Labs

TRPL Labs  /  Visitor Experience

Visitor Experience

Hunting and Fishing Guide

Can I hunt here, what's open today, and where to fish — from a phone, offline.

Screenshot of Hunting and Fishing Guide

Try it right here

This loads the live project from its own domain, exactly as a visitor would see it.

Not legal advice. The current state proclamations and the land manager always have the final word.

What it does

A companion to the camping tool for hunters and anglers around Medora. One button reads the phone's location and says who manages the ground, whether it is open to hunting, which hunting units it falls in, and legal shooting hours for that exact spot that day. On private land it asks the state whether the parcel is electronically posted.

Season dates are read from the state's proclamations every day, so next year's dates appear on their own; when a date changes or a season cannot be found, the workflow opens a GitHub issue. The regulation pages behind the written land rules are fingerprinted twice a week for the same reason. About 30 fishing waters are listed with species, ramps, recent stocking, and invasive-species notes.

What it can do

  • Land check with hunting units for deer, elk, pronghorn, bighorn, turkey, and lion
  • Shooting hours by spot and date using the NOAA solar method, with time-zone boundaries
  • Daily season-date parsing from state proclamations, with issues opened on change
  • Where-to-fish list filterable by species, with ramps, piers, and stocking history
  • Map with public land, walk-in tracts, no-shooting rings, posted land, and unit lines
  • Licenses, vendors, hunter education, and carcass rules in one view
  • Offline map that keeps land records, units, and shooting hours working with no signal

Make it your own

Start by forking the repository into your own organization. Everything below assumes you are working in your fork, not this one.

# clone your fork git clone https://github.com/YOUR-ORG/HuntFish.git cd HuntFish
  1. Fork the repo and replace the North Dakota Game and Fish services in collector/build.py with your state's PLOTS, units, and fishing-waters layers.
  2. Rewrite build() in collector/seasons.py for your state's proclamation pages, and the land rules in CLASSES in docs/huntfish.js.
  3. List your regulation pages in collector/check_sources.py so changes open an issue for a person to review.
  4. Request only the posted flag from any posted-land service. Owner names and contacts should never be read.
  5. Enable Pages from main, folder /docs, set your CNAME, enforce HTTPS, and give workflows read and write permission.

Stuck on a step? Open an issue on the repository. Questions from people adapting these for their own institution are the most useful feedback we get.