What I Built
StepBuddy is a simple outdoor activity companion that encourages people to take a break from their screens and reconnect with the world around them.
We spend so much time looking at screens that we sometimes forget to look around us. I wanted to build something small and practical that encourages people to step outside, even if they only have five minutes.
With StepBuddy, users can:
π± Generate nature missions: Get simple outdoor activities, such as observing different leaf shapes, discovering natural textures, or noticing sounds around them.
β±οΈ Choose their walk duration: Pick a 5, 10, or 15-minute walk.
πΆ Focus on the outdoors: Use a countdown timer with pause and resume controls, then put their phone away and enjoy their surroundings.
π Track their progress: See completed walks, outdoor minutes, and finished missions during their browser session.
StepBuddy also includes safety reminders and keeps activity tracking local in the browser.
The idea is simple: you don't need a long hike or an elaborate fitness plan to reconnect with nature. Sometimes, a small walk is enough to get started.
Code
GitHub repository: https://github.com/dodiyayash/StepBuddy
The project uses a React, TypeScript, and Vite frontend with a Python FastAPI backend.
The code includes the mission-generation API, a collection of fallback nature missions, the walking timer, and session progress tracking.
How I Built It
I built StepBuddy using:
React + TypeScript: For the interactive user interface.
Vite: For frontend development and building.
Python + FastAPI: For the backend API and mission-generation logic.
Ollama: As the local inference interface for an open-weight language model, such as Gemma 2B, when configured.
Browser localStorage: For session progress tracking.
Web Speech capabilities: For optional spoken experiences if implemented in the application.
The application is designed to request nature missions from a locally running open-weight model through Ollama. When the model is unavailable, it uses a curated fallback mission pool and identifies the source in the interface.
This distinction is important: the fallback mode works without a running AI model, but it is not itself generative AI. The actual local-model workflow depends on configuring and verifying Ollama and the selected model.
I deliberately kept the project small. Rather than building a complicated fitness platform, I focused on one clear behavior: helping someone take a short outdoor break.
Why Does Open Innovation Matter?
Open innovation makes it possible to experiment with AI in applications that don't need to depend entirely on a closed, hosted AI service.
For StepBuddy, local open-weight models offer a path toward generating personalized nature activities while giving developers more control over inference, experimentation, and deployment.
They also make it easier to explore privacy-conscious designs. StepBuddy does not need GPS tracking or a user account to provide its basic experience.
Building this project helped me explore how open-weight AI could support a small, everyday behavior changeβnot just answer questions on a screen.
My goal is to keep the technology in the background and let the real-world experience take center stage.
Prize Categories
OverAll
Top comments (0)