TouchGrass AI: Less Scrolling, More Living 🌿
What if AI helped us spend less time on screens instead of more?
That question inspired me to build TouchGrass AI, a local-AI-powered web app that generates personalized outdoor missions.
What I Built
TouchGrass AI helps people choose an outdoor activity based on their available time, interests, and experience level.
Users can generate missions for 15, 30, or 60 minutes, with activities such as walking, nature exploration, birdwatching, and gardening.
The goal is simple: get an idea, head outdoors, and spend less time scrolling.
Demo
🎥 Watch the demo: https://youtu.be/SX3HJ4AzR5Q
💻 Source code: https://github.com/utkarshydv27/TouchGrassAI
The app currently runs locally on my computer.
How I Built It
I built the application using Python, Flask, HTML, CSS, JavaScript, Ollama, and the Qwen 2.5 1.5B model.
Ollama runs the AI model locally, while Flask handles mission requests and input validation. The frontend lets users generate missions and track their progress in browser local storage.
I also added automated tests for the homepage, invalid inputs, successful mission generation using a mocked Ollama response, and Ollama-unavailable error handling.
All six automated tests passed.
Why Does Open Innovation Matter?
Open innovation makes this project easier to experiment with and adapt.
- Privacy: Mission-generation prompts are sent to a locally running Ollama service rather than a hosted AI API.
- Cost: There is no need for a paid hosted AI API for mission generation after installing the model and dependencies.
- Flexibility: Developers can experiment with compatible local models.
- Offline potential: Once everything is installed, mission generation can work without internet access while the local model service is available.
The application code is licensed under MIT. The AI model has its own license and terms.
What's Next?
I'd like to improve the outdoor recommendations and explore ways to make the experience more useful in different environments.
My favourite part of this idea is that the app's success should not depend on keeping someone online. It should help them choose an activity and then put their phone away.
Thanks for checking out my project!
Top comments (0)