DEV Community

Cover image for Field Notes: A Local Gemma Doodle Deck for Touching Grass
Khyati Kapil
Khyati Kapil

Posted on

Field Notes: A Local Gemma Doodle Deck for Touching Grass

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

Field Notes is a minimal doodle-themed outdoor prompt deck for people who want to get off their screens without turning “go outside” into another productivity task.

Tap draw a field note to get a tiny observation prompt. There is also a try local Gemma button that generates a fresh prompt when Gemma is running locally. When it is not, the offline deck takes over immediately.

The intended interaction is simple: draw a note, read it, put the phone away, and go notice something.

Demo

https://feild-notes.netlify.app/

Code

https://github.com/Khyati-Kapil/hacktoberfest-touchgrass

How I Built It

The try local Gemma action calls Ollama’s local /api/generate endpoint with the open-weight gemma3:1b model. The prompt asks Gemma for exactly two short sentences describing an outdoor observation, and the response is rendered into the field-note card.

If the local runtime is unavailable, the app falls back to a deterministic prompt deck. To try Gemma:

ollama pull gemma3:1b
ollama serve
Enter fullscreen mode Exit fullscreen mode

The app uses vanilla HTML/CSS/JavaScript, local Gemma inference, a deterministic fallback, a service worker, localStorage only, and no analytics or location tracking.

Gemma is a strong fit because Google describes the Gemma family as lightweight open-weight models that can run on laptops and local hardware. I also drew from community discussions about local-first AI and data sovereignty and offline PWA failure modes.

Why Does Open Innovation Matter?

A closed API would make this project easy to demo, but it would work against the point of the product.

Field Notes is meant for moments when connectivity may be poor and attention is already scarce. A local open-weight model can run without sending a person’s location, mood, or activity history to a server. It can also be swapped, fine-tuned, or prompted differently as the project evolves.

That makes the product:

  1. Offline by design.
  2. Private by default.
  3. Replaceable at the model layer.
  4. Low-cost to experiment with.
  5. Shorter to use than a typical AI app.

For this project, open innovation is what makes the “draw, then leave” interaction believable.

My Agent Session

Optional: I can add a saved DevRelay agent session link here after the session is saved.

Prize Categories

  • Overall challenge
  • Best Use of Gemma

Top comments (0)