DEV Community

Medha Sunkad
Medha Sunkad

Posted on

TouchGrass AI: Using Local AI to Help People Spend More Time Outdoors

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

🌱 TouchGrass AI: Using Local AI to Help People Spend More Time Outdoors

What I Built
TouchGrass AI is a local AI-powered application that generates personalized outdoor activity plans based on a user's chosen activity and mood.

Users can choose from activities such as walking, hiking, cycling, running, gardening, fishing, bird watching, and sketching. They enter their available time and current mood, and the application generates an activity description and practical steps to help them get outside.

The goal is to make planning an outdoor break easier and encourage people to put their devices away and enjoy the real world.

Demo

Source code: TouchGrass AI on GitHub

The application currently runs locally on my computer. I have included a screenshot of the working application showing an AI-generated bird-watching plan.

Code

GitHub repository: https://github.com/MedhaSunkad13/touchgrass-ai

The repository contains the Python application, dependency list, README, and supporting files.

How I Built It

I built TouchGrass AI using Python, Streamlit, Ollama, and Gemma 3 1B.

The application follows a hybrid approach:

  1. Streamlit collects the user's available time, mood, and selected activity.
  2. Python sends the selected activity and mood to Gemma 3 1B through Ollama.
  3. The model generates an activity description and practical steps in JSON format.
  4. Python parses and checks the generated output and cleans the steps.
  5. Streamlit displays the plan along with the duration and a screen-free reminder.

Gemma 3 1B is an open-weight model that I run locally through Ollama. This allowed me to experiment with AI inference on my own computer instead of depending on a hosted proprietary AI API.

Why Does Open Innovation Matter?

Open-weight models make AI experimentation more accessible to developers who want to understand how models behave and build applications around them.

For this project, running Gemma locally gave me the opportunity to integrate a language model into a real application without relying on a remote inference service. Once the model is downloaded, generation can run locally, so the activity-generation prompt does not need to be sent to a hosted AI provider.

This project helped me learn how open-weight AI can be combined with ordinary Python logic to build something practical. It also showed me that structured output still needs careful handling because small language models can produce inconsistent results.

I chose this approach because the project's purpose is to encourage people to spend less time on screens. Local inference also lets users experiment with the application without needing a hosted AI API key.

My Agent Session

This project uses a locally running model through Ollama rather than a separate agent-session workflow. I have not included a DevRelay session link.

What's Next?

I would like to improve output consistency, expand the available activities, and explore ways to make outdoor suggestions more useful while keeping the screen time required to use the application to a minimum.

Sometimes, the best use of technology is to help us put it down. 🌿

devchallenge #hf26challenge #gemma #opensource #python

Top comments (0)