DEV Community

Gourav Chhatwani
Gourav Chhatwani

Posted on AI-assisted

๐ŸŒฟ Walk & Notice โ€” AI That Gets You Off the Screen

Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass Submission ๐ŸŒฟ

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

What I Built

๐ŸŒฟ Walk & Notice

AI should help you leave the screen โ€” not keep you on it.

For Hacktoberfest Week 1, I built Walk & Notice, an AI-powered outdoor observation mission generator built around one simple idea:

The AI interaction should end when the real-world experience begins.

Instead of creating another chatbot that encourages people to spend more time on their phones, Walk & Notice uses AI to create a short, personalized outdoor mission โ€” and then tells the user to put the phone away.

The project has a proper Streamlit frontend where users configure the experience before generating their mission.

The interface lets users choose:

  • ๐Ÿค– AI provider
  • โฑ๏ธ Available time
  • ๐ŸŒณ Outdoor environment
  • ๐Ÿ”Ž What they want to notice
  • โšก Energy level

The application turns those choices into a short four-step observation mission.

Every mission ends with:

Now put your phone away.

The idea is intentionally simple:

Generate it. Read it. Go outside. Notice something.

The screen is supposed to be the shortest part of the experience.


Demo

โ–ถ๏ธ Quick Video Preview

Watch the full 3-minute demo on YouTube

๐Ÿš€ Live Production App

Open Walk & Notice on Render

๐ŸŒ Streamlit Demo

Open the Streamlit application

๐ŸŽฅ High-Quality Demo Download

Download the original high-quality demo from GitHub

GitHub may not preview the video directly because of its file size. The original high-quality video is available for download.

๐Ÿ”„ Alternative Video Download

Download the demo from JioCloud

Alternative download option if the GitHub file is inconvenient to access.

๐Ÿ“ธ Evidence

View screenshots and supporting evidence


Code

๐Ÿ’ป GitHub Repository

View Walk & Notice on GitHub

The repository contains the complete implementation, including:

  • Streamlit frontend
  • AI provider abstraction
  • Gemma 4 E4B + Ollama integration
  • OpenRouter integration
  • Prompt engineering
  • Automated tests
  • Docker configuration
  • GitHub Actions CI/CD
  • GitHub Container Registry publishing
  • Render deployment
  • Documentation
  • Demo and supporting evidence

How I Built It

I wanted the AI to be part of the solution without making the AI interaction itself the main experience.

The project therefore has two AI inference paths: a local open-weight path for development and a production path through OpenRouter.

๐Ÿฆ™ Local AI โ€” Gemma 4 E4B + Ollama

During development, I run Gemma 4 E4B locally through Ollama.

The local architecture is:

Streamlit
    โ†“
Python
    โ†“
Ollama
    โ†“
Gemma 4 E4B
    โ†“
Outdoor Mission
Enter fullscreen mode Exit fullscreen mode

This allows the application to generate missions locally using an open-weight model.

The local model runs on my RTX 3060, allowing me to develop and test the core AI experience without requiring a hosted AI API.

โ˜๏ธ Production AI โ€” OpenRouter

For the public deployment, I added a second provider using OpenRouter with:

openai/gpt-oss-20b
Enter fullscreen mode Exit fullscreen mode

The application keeps the AI provider behind the same Python interface, allowing the frontend and mission-generation logic to work with different inference providers.

The overall application flow is:

                     Streamlit Frontend
                           โ”‚
              โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
              โ†“                         โ†“
       Local AI Provider        Production Provider
              โ†“                         โ†“
       Gemma 4 E4B                 OpenRouter
              โ†“                         โ†“
           Ollama                  GPT-OSS-20B
              โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                           โ†“
                  Personalized Mission
                           โ†“
                  "Put your phone away."
                           โ†“
                         ๐ŸŒณ Outdoors
Enter fullscreen mode Exit fullscreen mode

๐ŸŽจ Streamlit Frontend

Rather than asking users to interact directly with an LLM, I built a proper Streamlit frontend around the model.

The interface collects structured preferences and passes them to the mission generator.

This turns the project from a raw model experiment into a small usable application.

The frontend controls the experience.

The model handles the generation.

And then the user leaves the screen.

๐Ÿง  Prompt Engineering

The mission generator is intentionally constrained.

The model is instructed to:

  • Generate exactly four numbered steps
  • Keep each step short
  • Match the user's selected preferences
  • Create safe outdoor activities
  • Require no special equipment
  • Avoid interacting with wildlife
  • Avoid traffic and dangerous locations
  • Avoid requiring a phone, camera, or recording

The final instruction is always:

Now put your phone away.

The goal isn't to generate a long AI response.

The goal is to generate something useful enough to read quickly and then act on in the real world.

๐Ÿ›ก๏ธ Safety by Design

Because Walk & Notice encourages people to go outdoors, safety is built into the generation instructions.

The model is explicitly prevented from creating missions involving things such as:

  • Traffic
  • Approaching wildlife
  • Dangerous climbing
  • Dangerous objects
  • Unsafe locations
  • Required equipment
  • Recording or photographing

The activities are designed around observation rather than risky physical challenges.

๐Ÿงช Automated Testing

I added automated tests for both AI provider paths:

Ollama generation
OpenRouter generation
Enter fullscreen mode Exit fullscreen mode

The local test suite currently passes:

2 passed
Enter fullscreen mode Exit fullscreen mode

These tests are also executed automatically through GitHub Actions before the production image is built.

๐Ÿณ Docker

The application is containerized with Docker.

The production image is published to GitHub Container Registry:

ghcr.io/gouravgc/walk-and-notice:latest
Enter fullscreen mode Exit fullscreen mode

This provides a reproducible production artifact that can be deployed without manually configuring the application environment.

โš™๏ธ GitHub Actions CI/CD

I built an automated GitHub Actions pipeline for testing and container delivery.

The workflow is:

GitHub Push
     โ†“
Run pytest
     โ†“
Build Docker Image
     โ†“
Push Image to GHCR
     โ†“
Render
     โ†“
Production Application
Enter fullscreen mode Exit fullscreen mode

View the successful GitHub Actions workflow

This means a code change can move through testing and container publishing automatically instead of requiring a manual Docker build and registry push.

๐Ÿš€ Render Deployment

The production application runs on Render using the Docker image published to GHCR.

Open the production application

This takes Walk & Notice beyond a local prototype and gives the project a publicly accessible production deployment.


Why Does Open Innovation Matter?

Open innovation matters to Walk & Notice because the AI itself is part of the project's philosophy.

The application was built around an open-weight model that can run locally.

With Gemma 4 E4B and Ollama, I can run the AI on my own hardware, experiment with prompts, change the model configuration, and develop the application without making a proprietary hosted API the only way the system can work.

That is particularly relevant to this project.

Walk & Notice is designed to reduce unnecessary screen time.

A local inference path means the core mission-generation experience can work without sending every development interaction to a remote AI provider.

It also gives me more control over experimentation.

I can:

  • Run the model locally
  • Modify the prompts
  • Experiment with the model
  • Change the application's behavior
  • Keep the core AI workflow under my control

The production deployment adds an OpenRouter path for public access, but the application architecture still keeps local open-weight inference as a first-class option.

For me, that is where open innovation fits this project best:

The AI can be experimented with locally, while the experience itself is designed to get the user away from the screen.


Prize Categories

I am entering the following partner categories:

๐ŸŸข Best Use of Gemma

Walk & Notice uses Gemma 4 E4B locally through Ollama as one of its AI providers.

Gemma is directly responsible for generating the personalized outdoor observation missions.

๐ŸŸ  Best Use of Render

The production version of Walk & Notice is deployed on Render using the Docker image published to GitHub Container Registry.

Open the production application

๐ŸŸฃ Best Use of GitHub Copilot

Walk & Notice uses GitHub Actions to automate its software delivery workflow.

The pipeline automatically runs tests, builds the Docker image, and publishes the production image to GHCR.

This uses the GitHub Actions automation route explicitly listed in the challenge's Best Use of GitHub Copilot category.


๐ŸŒ The Idea Behind Walk & Notice

The easiest thing for an AI application to do is give us another reason to stay online.

I wanted to build something different.

Walk & Notice uses AI to create the starting point for a real-world experience โ€” and then gets out of the way.

The AI generates the mission.

You do the walking.

You do the noticing.

The real world does the rest.

๐ŸŒฟ

Top comments (1)

Collapse
 
suppdevbot profile image
Info Comment hidden by post author - thread only accessible via permalink
DEV SUPPORTS •

You need to verify your account.

Enter fullscreen mode Exit fullscreen mode

tr.ee/dev-to

Some comments have been hidden by the post's author - find out more