# I vibe coded a Trail Bingo tailored to your Location and Season

> Source: <https://dev.to/sarojpaudel/i-vibe-coded-a-trail-bingo-tailored-to-your-location-and-season-3kg8>
> Published: 2026-10-12 07:04:25+00:00

*This is a submission for the [Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass](https://dev.to/challenges/hacktoberfest-week1-2026-10-05)*

I spend too much time on screens, so for the Touch Grass theme I wanted to build something where the screen is the shortest part of the experience.

Trail Bingo is a single Python script. You tell it where you’re going and how long you have:

`python3 trail_bingo.py --place "forest trail near Butwal" --minutes 45`

It writes a printable 3×3 nature bingo card. The challenges fit your place, the current season and your time: spot something green smaller than your thumbnail, listen for a bird you can’t see, find three shades of brown. The center square is always “stand still for one full minute”. The card ends with a reflection question to answer on the way home.

You print it, put your phone in your pocket, and go outside.

Video Demo: [https://drive.google.com/file/d/1lEXove5MtEjXOkQ2nbnzbz4-F-Gqb97W/view?usp=sharing](https://drive.google.com/file/d/1lEXove5MtEjXOkQ2nbnzbz4-F-Gqb97W/view?usp=sharing) 

The challenges are written by a open-weight model, gemma4, running locally through Ollama. The script sends a request to localhost:11434, so there’s no API key, account or cloud.

The design is deliberate:

The AI does one job. It writes context-aware challenge ideas. Everything else is plain Python and HTML.

The prompt does the real work. It supplies place, season and duration, asks for a mix of seeing, hearing, touching and smelling, caps each item at 10 words, and tells the model to leave nature unharmed.

JSON mode keeps a small model reliable. Ollama’s format: json stops it from rambling around the answer.

There’s a fallback. If the model isn’t running or returns bad output, a built-in set of 12 challenges takes over, so the tool never leaves you stuck at a trailhead.

The output is plain HTML with print CSS, so it fits one page and works on any printer.

I built it by vibe coding with Claude, then read through and tested it myself.

Trail Bingo has to work in the one place cloud AI doesn’t: standing at a trailhead with no signal.

It runs offline. After a one-time model download, it needs no internet.

Your location stays yours. Where you walk and when never reaches a server I don’t control.

It costs nothing to run. Every card is free, with no rate limits or API bill.

I can swap and change things. Switching models is one flag (--model), and the prompt is plain text I can edit to make birding, kids’ or foliage versions. The same setup could use a multilingual model for Nepali cards, or be fine-tuned on a local field guide. A closed API would make each of those a pricing, privacy or policy question.
