This is a submission for the Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass GrassQuest is a tiny web app with one goal: spend 30 seconds on the screen, then go outside.
You choose three things:
It checks your local weather and generates a mission card with 4-5 small, safe outdoor tasks. For example: find the largest tree in sight and look at its bark, listen for one full minute and count the different bird calls, or walk back with your phone in your pocket.
Most apps try to keep you looking at the screen. I wanted the screen to be the shortest part of the experience, so I added:
It's for anyone who spends too much time on a screen and wants a nudge to step outside without planning anything. There's no login, no accounts and no tracking.
🔗 Live app: https://grassquest-76mk.onrender.com/ (Hosted on a free tier, so the first load may take a few seconds to wake up.)
Get off the screen in under 30 seconds, then go outside.
GrassQuest is a lightweight, calm, nature-themed web app built with React (Vite) and Express. It generates 4-5 quick, actionable, safe outdoor micro-missions based on your available time, surroundings, energy level, and live local weather.
No login, no user accounts, no tracking, no friction.
html-to-image.
Stack: React (Vite) frontend, Express backend, optional MongoDB Atlas with Mongoose, deployed on Render. Express serves the built React app, so it's one deployable service.
Open-source AI: Gemma, Google's open-weight model, called through Google AI Studio. The prompt includes the time, surroundings, energy level and live weather, and asks for strict JSON: a title, a short intro and 4-5 tasks. The server parses and validates that JSON before showing it.
Weather: the browser's geolocation plus the Open-Meteo API, which is free and needs no API key. If location is blocked, there's a city search fallback.
Making it reliable:
Running it fully local: the README includes a path for running the same prompt with Ollama + Gemma, so mission generation can work on a laptop with no external API.
This app sends your location-based context (weather and where you are) into a prompt, and it's meant to be used in everyday life, often outdoors. An open-weight model fits that well: