This is a submission for the Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass
What I Built
TouchGrass is an AI-powered application built for the Hacktoberfest ’26 Week 1 challenge, Touch Grass.
The idea is simple: instead of keeping users glued to a screen, TouchGrass encourages them to step outside and engage with the real world.
Users can choose an activity, duration, setting, and difficulty to generate an outdoor mission. They can then enter Go Outside Mode, put their phone away, and return later to record their experience.
Key features:
- AI-generated outdoor missions
- Customizable activity, duration, setting, and difficulty
- Go Outside Mode for screen-free time
- Optional photo evidence and personal reflections
- My Submissions section to review completed missions
- Built-in fallback missions when AI inference is unavailable
Demo
- Live Demo: https://touchgrass-delta-six.vercel.app/
- Video Demo: https://youtu.be/9seersnxmN4
Code
GitHub Repository: https://github.com/HarshAggarwal1/touchgrass
The repository contains the React frontend, Express backend, mission-generation logic, and instructions for running the application locally.
How I Built It
TouchGrass uses React and Vite for the frontend, with Node.js and Express handling API requests.
The mission-generation flow works as follows:
- Users select their preferences.
- The frontend sends them to the backend.
- The backend attempts to generate a structured mission using the configured language model.
- The response is validated before being displayed.
- If AI inference fails, a built-in fallback provides a mission.
Mission records, reflections, and related data are stored in the browser.
Tech stack
- React and Vite
- Node.js and Express
- Hugging Face Inference Providers for hosted inference
- Browser localStorage for persistence
- Vercel and Render for deployment
The application is designed to remain useful even when the hosted AI provider is unavailable.
Why Does Open Innovation Matter?
Open innovation makes it possible to experiment with AI models, adapt them to specific use cases, and build applications without depending entirely on a single proprietary AI provider.
For TouchGrass, using an open-weight model makes the mission-generation component more flexible and replaceable. It also lets the project explore a different way of using AI: helping people spend less time interacting with technology.
The goal is not to maximize engagement or screen time. It is to give users a practical reason to put their phones away and experience the world around them.
Prize Categories
Best Use of Gemma: TouchGrass was initially built using Gemma through Ollama. The deployed model must be verified before claiming this category.
Render Deployment: The frontend is hosted on Vercel, and the backend is deployed on Render.
Top comments (0)