DEV Community

Cover image for Outside, Today: Weather-aware ideas to help us touch grass
Creta
Creta

Posted on Fully Autonomous

Outside, Today: Weather-aware ideas to help us touch grass

This is a submission for the Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass.

What I Built

Outside, Today is a small weather-based activity suggester for anyone who wants a nudge to spend less time deciding what to do and more time outdoors. Enter a city and it checks current conditions, the forecast, and nearby parks, gardens, and walking trails. It then gives three practical activity cards with a suggested time window, duration, and a note about why each idea fits the weather.

Each nearby place can include an interactive map preview. The cozy interface also has Moss, a little cat who follows the cursor, settles back at the edge when things get quiet, and gives weather-aware messages when tapped.

Demo

Live demo: https://weather-activity-mvp.onrender.com/

The app is not deployed yet. I’ll replace this placeholder with a working public demo before publishing this entry.

Code

GitHub repository: https://github.com/Mstr-Creta/weather_activity_mvp.git

How I Built It

The app uses FastAPI and Python for its backend, with a single HTML page built using vanilla JavaScript, CSS, and inline SVGs. SerpApi supplies live weather and local outdoor-place results. When GEMINI_API is configured, Google's hosted Gemma open-weight model uses the city, current conditions, forecast, and nearby places to generate three tailored activity ideas. If the model key is missing or the model request fails, local weather-based rules provide fallback ideas.

I chose Gemma because its open weights give builders more choice in how they inspect, adapt, and serve a model. This MVP calls Gemma through Google's hosted API; it does not run offline or self-host the model. That trade-off keeps setup light for a first build, while the model choice leaves room for a future self-hosted or alternative-provider version.

Why Does Open Innovation Matter?

The activity ideas depend on timely local context, but the language model that turns that context into a useful plan does not have to be locked to one proprietary model. An open-weight option gives future maintainers a path to change the serving setup, experiment with different Gemma variants, or move inference to infrastructure they control. The current hosted API is still an external service, so this version does not yet deliver local inference or keep all request data on the user's device.

The app sends the entered city to SerpApi for weather and nearby places. When Gemma is enabled, the city and related weather and place context are sent to Google's API. The app does not create an account or store a user profile.

Prize Categories

  • Best Use of Gemma: Gemma generates the weather-aware activity cards from current conditions and local search context.
  • Best Use of SerpApi: SerpApi provides fresh weather and nearby-place results that are passed into the Gemma prompt to ground its suggestions.

Top comments (0)