This is a submission for the Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady
What I Built
TouchGrass AI is a purpose-built micro-expedition application designed around one strict rule:
The screen should be the shortest part of the experience.
Developers, students, and desk workers can spend most of their day in front of screens, and even short breaks can turn into more screen time. TouchGrass AI breaks that loop by turning a short break into a simple outdoor mission.
The experience is intentionally:
Choose → Get a quest → Pocket the phone → Go outside → Observe → Return → Verify
The user selects an available time budget — 5, 15, 30, or 60 minutes — and an environment such as a park, backyard, urban area, trail, or waterfront.
TouchGrass AI then generates a sensory outdoor micro-quest with physical activities such as observing nature, listening to birds, feeling tree bark, or exploring the surroundings.
Pocket Mode then dims the screen, plays a departure chime, and tells the user to put the phone away and step outside.
After the activity, the user captures exactly one field photo. A local MobileNetV4 ONNX model runs directly on the CPU to classify the observation and distinguish nature/outdoor findings from obvious indoor technology such as monitors and keyboards.
The activity and outdoor minutes are recorded in a private local SQLite journal.
The goal is not to keep users inside the application.
The goal is to make them leave it.
Demo
Code
gokulkakde / touchgrass
TouchGrass AI is a local-first AI app that turns screen breaks into short outdoor micro-adventures. It uses open-weight AI locally to create outdoor quests and verify field observations—helping users spend less time on screens and more time outside.
How I Built It
Product Architecture
User at Desk
↓
Short Screen Interaction
↓
Select Time + Outdoor Environment
↓
Quest Engine
↓
Sensory Outdoor Micro-Quest
↓
Pocket Mode
↓
Phone Goes Away
↓
REAL-WORLD OUTDOOR ACTIVITY
↓
One Field Photo / Observation
↓
Local ONNX AI Inference
↓
Nature / Outdoor / Indoor Classification
↓
Private Local SQLite Journal
Technology Stack
AI
- MobileNetV4 Small ONNX
- ONNX Runtime
- NumPy
- Pillow Backend
- Python
- Flask
- Flask-CORS
- SQLite Frontend
- HTML5
- CSS3
- Vanilla JavaScript / ES6
- Web Audio API Testing
- Python
Why Does Open Innovation Matter?
Open AI is fundamental to the project rather than being an additional chatbot feature.
We chose a lightweight open-weight ONNX model and local inference because the product is specifically intended for outdoor use.
Privacy
Field photos may contain someone’s backyard, garden, neighborhood, or other personal surroundings.
Instead of sending those images to a proprietary cloud AI service, TouchGrass AI processes them locally on the user’s CPU.
The application is designed without cloud AI API calls or telemetry, and expedition data remains in the user’s local SQLite database. GitHub
Offline capability
Outdoor activities can happen in places with poor or nonexistent cellular connectivity.
Once the model is available locally, the AI verification itself does not require an internet connection.
This makes local inference particularly appropriate for the project’s outdoor-first use case. GitHub
No recurring AI API cost
The core vision verification does not require a paid proprietary vision API or per-request inference charges.
The model runs locally using standard CPU hardware.
Control and portability
The ONNX-based architecture keeps the AI layer portable. The application can use another compatible ONNX vision model without rebuilding the entire product around a proprietary AI provider.
Fast local inference
The documented benchmark is approximately 11–16 ms of CPU inference time, with the model designed to run without requiring a GPU or CUDA environment.