DEV Community

Dibyendu Chatterjee
Dibyendu Chatterjee

Posted on

Fieldnotes: an offline Gemma field guide that turns a park walk into a quest

Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass Submission 🌿

This is a submission for the Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass

What I Built

Fieldnotes is an offline field-guide that turns a short walk into a
quest. You pick a park and how many minutes you have, and a local
open-weight model writes three tasks grounded in real OpenStreetMap
features and species recorded nearby on iNaturalist. You photograph
what you find, a local vision model checks each photo, and the app
writes a short field-journal entry. It's for anyone who wants a reason
to put the phone away and look around a park. [I built the area pack for Eco Park, Kolkata.]

Demo

Screenshots and a screen recording coming soon. The README has the full setup.

Code

🌿 Fieldnotes β€” Touch Grass Challenge

An offline-first outdoor nature quest assistant and field journal powered by local open-weight AI (gemma4:e2b). Fieldnotes plans short walking quests tailored to your local park, verifies your photo observations using on-device vision, and writes a calm, reflective field journal β€” completely on-device with Wi-Fi switched off.


πŸ“Έ Screenshots

(Replace with field walkthrough recordings or UI screenshots)

+-----------------------------------------------------------------------+
|  🌿 Fieldnotes                 [Offline: runs locally]  [DEMO DATA]    |
|  Quiet, observation-first nature guide powered by local AI.            |
+-----------------------------------------------------------------------+
|  1. PLAN YOUR WALK                                                    |
|     Area Pack: [ demo [DEMO DATA]          v ]                        |
|     Time Available: [ 20 Minutes (Standard Walk) v ]                  |
|     [ Generate Quest ]                                                |
+-----------------------------------------------------------------------+
|  ACTIVE QUEST: Coastal Observation Walk                               |
|  Intro: Let us take a brief survey of the immediate coastal           |
|         environment and the unique life it harbors.                   |
|                                                                       |
…

How I Built It

  • Model: Gemma 4 (e2b) running locally through Ollama, for both quest writing and photo checking.
  • Data: a one-time "area pack" download from OpenStreetMap and iNaturalist (open data). After that, the app makes no network calls.
  • Sunset and daylight are computed locally.
  • Stack: Python/FastAPI backend, plain HTML page.
  • Benchmarks on my laptop (RTX 2050, Windows, Ollama): gemma4:e2b ran at about 35 tokens/s for text and 42 tokens/s for vision. gemma4:e4b was about 9 tokens/s and froze my laptop while loading, so I switched to e2b.
  • Offline test: the smoke test passed with Wi-Fi switched off.

Why Does Open Innovation Matter?

  • It works where trails have no signal, because the model runs on the laptop. A closed API can't follow you there.
  • My location and photos never leave the device. Coordinates are only sent to the public data services once, when I download the area pack.
  • The data is open (OpenStreetMap, iNaturalist), and the model can be swapped or fine-tuned for a region.
  • Tradeoff, honestly: the small model is sometimes generic or unsure about photos.

Prize Categories

Best Use of Gemma (Gemma 4 e2b running locally).

Top comments (0)