OutsideFlow AI: Spend Less Time Planning and More Time Outside A developer built OutsideFlow AI, a local, open-source outdoor activity planner that uses a locally running open-weight model (Gemma 3 1B via Ollama) to turn a user's available time, mood, and environment into a short structured outdoor plan. The React/Vite frontend and Node.js/Express backend prompt the model for JSON output, then push the user to put the phone away and go outside. The project was submitted to the Hacktoberfest 2026 Open-Source AI Challenge Week 1: Touch Grass. This is a submission for the Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass https://dev.to/challenges/hacktoberfest-week1-2026-10-05 . I built OutsideFlow AI , a local AI-powered outdoor activity planner designed to do something slightly unusual for an AI application: get people away from the screen. A lot of apps are designed to increase engagement and keep users inside the application for as long as possible. OutsideFlow does the opposite. The user opens the app, tells it how much free time they have, how they are feeling, and what kind of outdoor environment is available. For example: Available time: 30 minutes Mood: Relax Environment: Neighborhood Extra preference: I want something quiet and I don't want to spend money. OutsideFlow then uses a locally running open-weight AI model to create a short outdoor plan. A generated plan might look like this: 30-Minute Neighborhood Reset 1. Walk outside without headphones β€” 10 min 2. Notice three things you normally ignore β€” 7 min 3. Sit somewhere quiet and observe your surroundings β€” 8 min 4. Walk home at a comfortable pace β€” 5 min The user then clicks: Start Outdoor Session and the app displays one final message: Put your phone away and go 🌿 That is the main idea behind the project. The screen should be the shortest part of the experience. OutsideFlow is for people who want to spend more time outdoors but sometimes get stuck deciding what to do. Someone may only have 15 or 30 minutes available. They may want to relax, exercise, explore, or do something social. Instead of spending another 20 minutes searching online for ideas, OutsideFlow creates a simple plan in seconds and encourages the user to leave the screen. Here is a short video showing OutsideFlow AI in action: YouTube Demo: The demo shows: The complete source code is available on GitHub: GitHub Repository: OutsideFlow AI is a local AI-powered outdoor activity planner built for the Hacktoberfest 2026 Open-Source AI Challenge Week 1: Touch Grass . The goal is simple: Spend less time planning. Spend more time outside. OutsideFlow asks the user for a few preferences, generates a personalized outdoor plan using a locally running open-weight AI model, and then encourages the user to put the phone away and actually go outside. This project was built for the Hacktoberfest 2026 theme: Touch Grass The challenge asks participants to build something with open-source AI that gets people off the screen and into the real world. OutsideFlow is designed specifically around that idea. The screen is only used for a short planning step. After the outdoor plan is generated, the user starts the session and is encouraged to: People often want to take… OutsideFlow is a small full-stack application built with: OutsideFlow follows a simple architecture: User Preferences ↓ React Frontend ↓ Node.js / Express Backend ↓ Ollama ↓ Gemma 3 1B ↓ Structured Outdoor Plan ↓ React Session Screen ↓ Put the phone away and go outside The frontend is built with React and Vite. The user selects: The frontend sends those values to the backend. The backend is built with Node.js and Express. It receives the user's preferences and creates a prompt for the AI model. { "time": "30", "mood": "Relax", "environment": "Neighborhood", "note": "I want something peaceful and I don't want to spend money." } The backend asks Gemma to return structured JSON. Example: { "title": "30-Minute Quiet Neighborhood Reset", "goal": "Relax outside with a calm and simple walking session.", "activities": { "step": 1, "activity": "Walk slowly around your neighborhood without headphones", "duration": "10 min" }, { "step": 2, "activity": "Notice three plants or details you usually ignore", "duration": "7 min" }, { "step": 3, "activity": "Sit somewhere quiet and observe your surroundings", "duration": "8 min" }, { "step": 4, "activity": "Walk home at a comfortable pace", "duration": "5 min" } } The backend validates and normalizes the response before returning it to React. OutsideFlow uses: Gemma 3 1B running locally through: Ollama I chose a small model because this project does not need a huge cloud-based model. The AI only needs to understand a few user preferences and generate a practical, structured outdoor plan. One part I specifically added for the challenge theme was the outdoor session screen. After generating the plan, the user clicks: Start Outdoor Session The normal planning UI disappears. The session screen shows only the essential steps and tells the user: Your plan is ready. The rest happens outside. That was important because I did not want to build an outdoor app that still required the user to stare at the screen throughout the whole experience. Open innovation matters a lot for OutsideFlow because the AI is not simply an optional feature. It is what makes the personalized planning possible. A hard-coded application could display a list of generic outdoor ideas. But it would struggle to adapt naturally to combinations such as: 15 minutes + Exercise + Beach or: 60 minutes + Explore + Park + no spending Using an open-weight model makes the application much more flexible. Gemma runs locally on the user's machine through Ollama. That means the core AI functionality does not need to send every request to a cloud AI service. A user's preferences can contain personal information. I am feeling stressed today. I only have 20 minutes. I want somewhere quiet. With local inference, those preferences can remain on the user's own computer. OutsideFlow does not need a paid AI API every time someone generates a plan. Once Gemma is installed locally, the user can generate plans without paying for each request. The application is not permanently tied to one AI provider. Because the AI layer runs through Ollama, another supported open-weight model could be tested or swapped in later. Once Ollama and the model are installed, the core planning feature can run locally without depending on an external AI API. That fits the idea behind OutsideFlow especially well. An application that encourages people to go outside should not require constant cloud connectivity just to create a simple activity plan. The challenge theme made me think differently about how AI applications are usually designed. Many AI products encourage users to stay inside the interface: Ask another question ↓ Generate another response ↓ Keep scrolling ↓ Repeat OutsideFlow intentionally changes that pattern: Choose preferences ↓ Generate plan ↓ Start session ↓ Put phone away ↓ Go outside The AI is there to remove the planning friction, not become the activity itself. That is the part of the project I like most. OutsideFlow was my second Hacktoberfest 2026 project using open-weight AI. My first challenge project helped me learn how to run Gemma locally and connect it to a React and Node.js application. For this challenge, I focused more on how AI can shape the actual product experience. I practiced: One thing I found interesting is that AI does not always have to increase digital engagement. It can also be used to help people leave the screen. I did not use a DevRelay agent session for this project. The application uses a straightforward local AI architecture with Gemma running through Ollama. I am entering OutsideFlow AI in: Gemma 3 1B is the core AI model responsible for creating the personalized outdoor activity plans. The idea behind OutsideFlow is intentionally simple: Use the screen just long enough to decide what to do, then go do it. AI is often used to keep people inside digital experiences. For this challenge, I wanted to try the opposite. OutsideFlow uses AI to remove the small amount of planning that can stop someone from taking a break, walking outside, exploring somewhere nearby, or simply getting some fresh air. The app creates the plan. The actual experience happens outside. 🌿