This is a submission for the Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass
Touch Grass 🌿 — AI-Powered Outdoor Exploration & Nature Missions Platform
What I Built
Touch Grass (NatureQuest 🌱) is an open-source AI platform built around a single foundational principle:
"Plan on the screen. Experience it in the real world."
Most digital applications attempt to maximize screen time, trapping users in engagement loops. Touch Grass does the exact opposite: it uses open-source AI to help people disconnect from their screens, step outside, and reconnect with nature through personalized real-world missions.
Who Is It For?
- Anyone suffering from screen fatigue who wants a structured, enjoyable reason to step outside.
- Mindful explorers looking for 15-to-60-minute outdoor micro-expeditions.
- Beginner birdwatchers, leaf taxonomists, and balcony gardeners.
- Families and individuals wanting private, screen-free outdoor activities.
Key Application Features
-
🤖 AI Nature Guide (Feature A)
- An intelligent conversational assistant powered by open-weight models (Local Ollama, Open-Weight Remote API, or built-in Offline Nature Engine).
- Provides concise, actionable suggestions for outdoor micro-adventures, bird watching, leaf structures, and balcony gardening.
- Transparent Engine Disclosures: Every response displays a live badge indicating which AI engine or local model generated it.
-
🧭 AI Outdoor Adventure Planner (Feature B)
- Generates custom outdoor plans based on available time (15–90 mins), activity preference, difficulty level, starting location, focus interests, and accessibility needs.
- Outputs structured adventure cards containing required gear checklists, step-by-step outdoor activities, nature observation challenges, safety recommendations, and a real-world completion goal.
- Printable & Downloadable Cards: One-click browser print (
window.print()) formatted for paper or TXT file download so users can fold the plan into their pocket and leave their phone inside.
-
🎯 Nature Missions & Challenges (Feature C)
- Interactive challenge board featuring 8 curated real-world missions (15-Minute Unplugged Senses, 5-Plant Taxonomist, 3 Bird Calls Scavenger, Cloud Architecture, Local Park Walk, Soil Decomposer Inspection).
- Includes daily challenge highlights, category/difficulty filters, environmental impact tips, and self-reported manual completion toggles with celebratory confetti animations.
-
📖 Personal Nature Journal (Feature D)
- 100% local, private observation journal stored in browser
localStorage. - Record dates, activity titles, locations, weather notes, sensory mood states, tags, and optional photograph attachments (with live image previews).
- Supports search filtering, JSON export for offline backups, and clear data controls.
- 100% local, private observation journal stored in browser
-
📊 Touch Grass Dashboard (Feature E)
- Interactive activity dashboard tracking total outdoor time (hours & minutes), completed missions, saved adventures, exploration streaks, and explorer tier progress.
- Features a Real-World Integrity Disclosure clarifying that all statistics are calculated strictly from actual self-reported user activity.
Demo
https://touch-grass-sand.vercel.app/
Code
https://github.com/your-username/touch-grass Technology Stack
- Frontend Framework: React 19 & Vite 6
- Styling: Tailwind CSS v4 CLI with custom nature design tokens (forest green, moss, cream, sand)
- Icons & Micro-animations: Lucide React & Canvas Confetti
- Routing: React Router DOM v7
- Data Storage: Local browser storage (
localStorage) with JSON export/import
How I Built It
I designed a modular AI Service Module (src/services/aiService.js) separate from React UI components:
┌─────────────────────────────────────────┐ │ Touch Grass AI Service │ └────────────────────┬────────────────────┘ │ ┌──────────────────────────┼──────────────────────────┐ ▼ ▼ ▼ ┌───────────────────────┐ ┌───────────────────────┐ ┌───────────────────────┐ │ Local Ollama │ │ Open-Weight API │ │ Offline Nature Engine │ │ (http://localhost:11434) │ │ (OpenAI-Compatible) │ │(Deterministic Fallback)│ └───────────────────────┘ └───────────────────────┘ └───────────────────────┘ - Local Ollama Inference:
- Connects directly to a local Ollama server running open-weight models (
llama3.2,gemma2,phi3,mistral). - Runs 100% locally on the user's laptop without sending data to external servers.
- Connects directly to a local Ollama server running open-weight models (
- Open-Weight Remote API:
- Connects to open inference endpoints supporting open-weight models.
- Deterministic Rule-Based Fallback Engine:
- A rich offline generator that creates tailored, structured adventure plans and guide responses instantly when internet or local model endpoints are unavailable.
- Source Attribution & Safety:
- Every generated plan displays latency metadata and model disclosure notices.
- Built-in safety guardrails: explicit warning against eating wild plants/mushrooms based solely on AI responses, plus Leave No Trace and wildlife distance rules.
Why Does Open Innovation Matter?
Open innovation and open-source AI are fundamental to building ethical technology that respects human attention and real-world well-being:
- 🔒 Absolute Privacy:
- Personal journal entries, mood notes, and activity history remain stored 100% locally on the user's device. Open AI allows full local processing without transmitting personal logs to third-party tracking servers.
- 🔍 Radical Transparency:
- Users always know where their generated guidance comes from. Disclosing whether an answer came from a local model, remote API, or deterministic fallback prevents misleading users about AI capabilities.
- 🧩 Model Flexibility:
- Open architecture allows developers and users to swap open-weight models (Llama, Gemma, Phi) seamlessly without rewriting application logic.
- 🌱 Universal Accessibility:
- Open innovation ensures that anyone—regardless of financial means or API key access—can use the built-in offline engine to explore nature completely free.
- ⚡ Offline Resilience:
- Saved adventures, basic nature missions, and personal journal logs remain fully accessible offline, making Touch Grass reliable even deep on outdoor forest trails.
My Agent Session
Prize Categories
- Hacktoberfest Week 1: Touch Grass Main Track
- Best Local Open-Source AI / Ollama Integration
- Best Privacy-First & Offline-Resilient Application
Plan on the screen. Experience it in the real world. 🌿