This is a submission for the Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass
What I Built
I built TouchGrass AI, an AI-powered outdoor adventure companion designed to turn screen time into real-world activity.
The idea is simple: instead of keeping users inside an AI chat, the AI gives them a reason to put the phone down and go outside.
Users choose how much time they have, their environment, their mood, and what kind of experience they want. TouchGrass AI then generates a personalized outdoor mission, such as exploring nature, taking a short walk, observing plants or birds, or completing a small outdoor challenge.
The website also includes:
- 🤖 AI-generated outdoor missions
- 🌿 Different environments and adventure styles
- ⏱️ Active mission mode with a timer
- 📸 AI-powered nature/photo discovery
- ⭐ XP and progress tracking
- 📖 Outdoor adventure journal
- 🌙 Dark mode
- 📱 Responsive design for mobile and desktop
The target audience is anyone who spends too much time on screens and needs a simple push to get outside.
The core philosophy is:
The best AI interaction is the one that gets you to stop using the AI.
Demo
Live Website:
https://ayushkasaudhan957-eng.github.io/TouchGrass-AI/
The website is deployed and can be used directly in the browser.
Code
GitHub Repository:
https://github.com/ayushkasaudhan957-eng/TouchGrass-AI
The complete source code is open and available in the repository.
How I Built It
TouchGrass AI is built around open-weight AI models accessed through Hugging Face Inference Providers.
For text generation, I used:
-
OpenAI GPT-OSS-120B (
openai/gpt-oss-120b) -
Qwen2.5-VL-3B-Instruct (
Qwen/Qwen2.5-VL-3B-Instruct) for vision-based image analysis
Hugging Face Inference Providers provides access to open models through an OpenAI-compatible chat-completion endpoint, allowing the application to use hosted inference without requiring users to download a local model.
Architecture
User
↓
TouchGrass AI Website
↓
HTML + CSS + JavaScript
↓
Node.js / Express Backend
↓
Hugging Face Inference Providers
↓
Open-Weight AI Models
↓
Personalized Outdoor Mission / Nature Analysis
The frontend handles the user experience, mission builder, timer, XP, journal and image upload.
The backend acts as a secure AI proxy so that the Hugging Face API token is not exposed in the browser.
For mission generation, the user's preferences are converted into a structured prompt and sent to the open-weight language model.
For the nature discovery feature, an uploaded image is sent to a vision-language model which analyzes what is visible and provides an AI-generated observation.
I intentionally chose hosted inference instead of requiring users to install Ollama, LM Studio, or download large models. This makes the project much easier to try while still keeping open-weight models at the core of the AI functionality.
Why Does Open Innovation Matter?
Open innovation makes this project possible because the AI layer is not loc


Top comments (0)