What if an AI application had one goal that was completely opposite to keeping you on the screen?
Instead of asking you to chat with it for another hour, what if it gave you a reason to close the laptop, put your phone away, and go outside?
That was the idea behind FieldNote AI, my project for the Hacktoberfest Open Source AI Challenge: Touch Grass.
🌱 The Idea
AI is becoming increasingly good at keeping us inside digital environments.
We use AI to write, search, study, code, create images, plan things, and answer questions. All of that can be useful, but it also creates an interesting problem:
What if we used AI to help us spend less time using technology?
FieldNote AI is a local-AI micro-adventure journal designed around exactly that idea.
The user provides three simple inputs:
- Available time
- Energy level
- Outdoor setting
Gemma then creates a small outdoor mission with three things to observe.
The important part is what happens next:
The app tells you to leave the screen.
You go outside, complete the mission, observe your surroundings, and come back when you're finished.
You then write down what you actually noticed, and local AI turns that reflection into a short field note.
The AI is not the destination.
The real world is.
🧭 The Experience
The entire experience follows five steps:
1. Plan
Choose your available time, energy level, and outdoor setting.
For example, someone might have:
20 minutes • Low energy • Nearby park
FieldNote AI uses those choices to generate a suitable micro-adventure.
2. Go Outside
The application enters Screen Exit Mode.
The user is encouraged to put their phone away and actually complete the mission instead of continuing to interact with the application.
3. Observe
The generated mission includes three observation challenges.
These are designed to make the user slow down and pay attention to things they might normally ignore.
4. Reflect
After returning, the user writes a short reflection describing what they actually experienced.
5. Keep the Memory
Gemma transforms the user's reflection into a concise field note.
The generated note is grounded in what the user actually wrote rather than inventing details about their experience.
↓ SCREENSHOTS HERE ↓
📸 See It in Action
🤖 Why Gemma?
FieldNote AI uses Google Gemma 3:4b through Ollama.
The model runs locally on the user's computer, which means the project does not need a paid AI API or a cloud AI account.
There are two main AI interactions:
Mission Generation
Gemma takes the user's available time, energy, and outdoor setting and creates a personalized micro-adventure.
Field Note Generation
Gemma takes the user's reflection and turns it into a polished field note while being instructed to stay grounded in the details provided by the user.
This local approach was especially important to the project because the experience can contain personal observations and reflections.
🔒 Why Local AI?
The project was designed with a local-first approach.
The core AI generation happens through:
Browser → Flask → Ollama → Gemma → Flask → Browser
There is no requirement for a paid AI API.
There is no requirement for a cloud AI account.
The user's reflections do not need to be sent to a remote AI provider.
For a small personal journaling experience, that felt like the right approach.
🛠️ How I Built It
FieldNote AI was built using a deliberately simple stack:
- HTML for the interface
- CSS for the visual design
- JavaScript for the interaction flow
- Python + Flask for the backend
- Ollama for local model inference
- Gemma 3:4b for the AI generation
I wanted to keep the architecture simple enough that the project could be understood and run locally without a complicated setup.
The basic architecture looks like this:
User Choices
│
▼
Flask Backend
│
▼
Ollama Local API
│
▼
Gemma 3:4b
│
▼
Outdoor Mission
│
▼
Screen Exit Mode
│
▼
Real-World Experience
│
▼
User Reflection
│
▼
Gemma 3:4b
│
▼
Field Note
🧠 One Challenge I Ran Into
One interesting problem appeared while testing the field-note generation.
A language model can naturally try to make writing more vivid by adding details.
That is normally useful.
For a journaling application, however, it creates a problem.
If a user says:
"I sat outside and noticed the sound of birds."
The AI should not turn that into:
"Golden sunlight filtered through the trees while cool wind moved the leaves."
Those details sound nice, but the user never said they happened.
So I changed the field-note generation prompt to make grounding a strict requirement.
The model is instructed to use only details explicitly present in the user's reflection and not invent objects, sounds, weather, sunlight, people, events, smells, or emotions.
That made the generated field notes much more appropriate for the purpose of the application.
🌍 Why This Fits "Touch Grass"
The challenge theme is simple:
Touch Grass.
FieldNote AI takes that literally.
Most digital products are optimized to keep users engaged for longer.
FieldNote AI is intentionally designed to break that loop.
The application exists to create a small reason to:
Close the laptop.
Put the phone away.
Go outside.
Pay attention.
The screen is only the starting point.
The actual experience happens away from it.
🔓 Why Open Innovation Matters
I also wanted the project to demonstrate that useful AI experiences do not always require a large cloud service or an expensive API.
With an open-weight model such as Gemma and a local runtime like Ollama, developers can experiment with AI applications where privacy, accessibility, and local processing matter.
Open tools also make experimentation easier.
A student with a laptop can take an idea, run a model locally, connect it to a small web application, and build something useful without first needing a production cloud infrastructure budget.
That is one of the things I find most interesting about the current open AI ecosystem.
📚 What I Learned
Building FieldNote AI taught me a few things beyond simply connecting an application to an AI model.
AI output needs boundaries
A language model can produce convincing text, but convincing does not always mean accurate.
For applications involving personal experiences, grounding the output is important.
The best AI interaction isn't always more interaction
The most interesting part of FieldNote AI is that the application intentionally asks the user to stop using it.
That changed how I thought about AI product design.
Simple architectures can still create interesting experiences
FieldNote AI does not require a huge stack.
A browser, Flask, Ollama, and Gemma are enough to create the complete experience.
🚀 Future Possibilities
There are several directions the project could take in the future:
- Local storage for completed field notes
- A personal collection of past adventures
- More mission types
- Accessibility and difficulty options
- Optional weather-aware missions
- Exporting field notes as a personal journal
- Offline-first progressive web app support
- Support for additional local AI models
For now, I wanted to keep the core experience focused rather than turning it into another complicated productivity application.
🔗 Project
The complete project is available on GitHub:
FieldNote AI
View the FieldNote AI repository on GitHub
The project can be run locally with Python, Flask, Ollama, and Gemma 3:4b.
🌿 Final Thought
AI does not always have to give us another reason to stare at a screen.
Sometimes it can do the opposite.
FieldNote AI is a small experiment in that direction:
Use AI to create the adventure.
Leave the screen behind.
Experience the world.
Come back and remember it.
Built for the Hacktoberfest Open Source AI Challenge: Touch Grass.



Top comments (0)