<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Vaibhav Krishan Yadav</title>
    <description>The latest articles on DEV Community by Vaibhav Krishan Yadav (@vaibhavkrishanyadav).</description>
    <link>https://dev.to/vaibhavkrishanyadav</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4169679%2Fad288b60-e711-4be9-a14e-014bdda18daf.jpg</url>
      <title>DEV Community: Vaibhav Krishan Yadav</title>
      <link>https://dev.to/vaibhavkrishanyadav</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/vaibhavkrishanyadav"/>
    <language>en</language>
    <item>
      <title>WildMiles — AI Creates the Quest. You Create the Miles.</title>
      <dc:creator>Vaibhav Krishan Yadav</dc:creator>
      <pubDate>Sun, 11 Oct 2026 16:10:52 +0000</pubDate>
      <link>https://dev.to/vaibhavkrishanyadav/wildmiles-ai-creates-the-quest-you-create-the-miles-4797</link>
      <guid>https://dev.to/vaibhavkrishanyadav/wildmiles-ai-creates-the-quest-you-create-the-miles-4797</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-week1-2026-10-05"&gt;Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;What if AI helped you spend &lt;strong&gt;less&lt;/strong&gt; time with AI?&lt;/p&gt;

&lt;p&gt;That was the idea behind &lt;strong&gt;WildMiles&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;WildMiles is a local-AI outdoor adventure app that turns a normal walk or run into a real-world quest.&lt;/p&gt;

&lt;p&gt;You choose:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;how long you want to run&lt;/li&gt;
&lt;li&gt;how difficult it should be&lt;/li&gt;
&lt;li&gt;what kind of adventure you want&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Then the AI generates a quest with challenges such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;🏃 movement tasks&lt;/li&gt;
&lt;li&gt;🧭 exploration goals&lt;/li&gt;
&lt;li&gt;📸 photo challenges&lt;/li&gt;
&lt;li&gt;🏁 finish challenges&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Once the run starts, WildMiles tracks your route with GPS, records where challenges were completed, awards XP, and can verify photo challenges using a local multimodal AI model.&lt;/p&gt;

&lt;p&gt;The core idea is:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;AI creates the adventure. The real world becomes the interface.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;WildMiles is designed as a mobile-first experience.&lt;/p&gt;

&lt;p&gt;A typical flow looks like this:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Generate a quest&lt;/li&gt;
&lt;li&gt;Start the run&lt;/li&gt;
&lt;li&gt;Complete challenges outdoors&lt;/li&gt;
&lt;li&gt;Track the route and checkpoints&lt;/li&gt;
&lt;li&gt;Verify photo proof with AI&lt;/li&gt;
&lt;li&gt;Finish the run and generate a recap&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;During one test run, WildMiles recorded:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Distance:&lt;/strong&gt; 1.49 km&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Time:&lt;/strong&gt; 13:59&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Average pace:&lt;/strong&gt; 9:21/km&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GPS accuracy:&lt;/strong&gt; ±6 m&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Quest progress:&lt;/strong&gt; 3/4&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Screenshots
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
  &lt;tbody&gt;
&lt;tr&gt;
    &lt;td&gt;
      &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flcj4k7b20r9nuzvw8kmt.jpeg" width="254" height="1600"&gt;
      &lt;br&gt;
      &lt;b&gt;Quest Setup&lt;/b&gt;
    &lt;/td&gt;
    &lt;td&gt;
      &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3iiwgdpp7sh4glt19q1z.jpeg" width="143" height="1600"&gt;
      &lt;br&gt;
      &lt;b&gt;Generated Quest&lt;/b&gt;
    &lt;/td&gt;
    &lt;td&gt;
      &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flvqinllefgr6a4kk5v37.jpeg" width="142" height="1600"&gt;
      &lt;br&gt;
      &lt;b&gt;Live GPS Run&lt;/b&gt;
    &lt;/td&gt;
    &lt;td&gt;
      &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fja054eymmu7i5bclagmw.jpeg" width="134" height="1600"&gt;
      &lt;br&gt;
      &lt;b&gt;Quest Progress&lt;/b&gt;
    &lt;/td&gt;
  &lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://assets.dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/vaibhavkrishanyadav" rel="noopener noreferrer"&gt;
        vaibhavkrishanyadav
      &lt;/a&gt; / &lt;a href="https://github.com/vaibhavkrishanyadav/wildmiles" rel="noopener noreferrer"&gt;
        wildmiles
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      An open-source AI running adventure app that gets you off the screen, gives you outdoor missions, verifies photo challenges locally, and rewards you with XP and badges.
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;🌿 WildMiles&lt;/h1&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;AI creates the quest. You create the miles.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;WildMiles is a local-AI outdoor adventure app that turns an ordinary walk or run into a real-world quest.&lt;/p&gt;
&lt;p&gt;Instead of keeping users inside another AI interface, WildMiles uses AI to give them a reason to leave the screen behind.&lt;/p&gt;
&lt;p&gt;Choose a duration, difficulty, and adventure mode. WildMiles generates outdoor challenges, tracks the run with GPS, records challenge checkpoints, verifies photo challenges with a local multimodal model, awards XP, and can generate an AI-written post-run recap.&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;✨ What WildMiles Does&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;A WildMiles session looks like this:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Choose a run duration.&lt;/li&gt;
&lt;li&gt;Select a difficulty.&lt;/li&gt;
&lt;li&gt;Pick an adventure mode.&lt;/li&gt;
&lt;li&gt;Let local AI generate a quest.&lt;/li&gt;
&lt;li&gt;Start the run.&lt;/li&gt;
&lt;li&gt;Complete challenges outside.&lt;/li&gt;
&lt;li&gt;Track the route and challenge locations.&lt;/li&gt;
&lt;li&gt;Verify photo proof with local AI.&lt;/li&gt;
&lt;li&gt;Earn XP and progress through levels.&lt;/li&gt;
&lt;li&gt;Generate an adventure recap after the run.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;WildMiles transforms a normal run into a…&lt;/p&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/vaibhavkrishanyadav/wildmiles" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;WildMiles is built with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Next.js&lt;/li&gt;
&lt;li&gt;React&lt;/li&gt;
&lt;li&gt;TypeScript&lt;/li&gt;
&lt;li&gt;Tailwind CSS&lt;/li&gt;
&lt;li&gt;Ollama&lt;/li&gt;
&lt;li&gt;Gemma 3 4B&lt;/li&gt;
&lt;li&gt;Leaflet&lt;/li&gt;
&lt;li&gt;OpenStreetMap&lt;/li&gt;
&lt;li&gt;Browser Geolocation API&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  How I Built It
&lt;/h2&gt;

&lt;p&gt;The AI layer uses &lt;strong&gt;Gemma 3 4B running locally through Ollama&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Gemma powers three main parts of WildMiles:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Quest Generation
&lt;/h3&gt;

&lt;p&gt;The model generates structured outdoor challenges based on duration, difficulty, and adventure style.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Photo Verification
&lt;/h3&gt;

&lt;p&gt;For photo challenges, WildMiles sends the uploaded image to Gemma and asks whether it satisfies the challenge.&lt;/p&gt;

&lt;p&gt;This makes the AI act as a lightweight real-world quest referee.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Adventure Recap
&lt;/h3&gt;

&lt;p&gt;After the run, Gemma receives the run details such as distance, time, pace, completed challenges, and checkpoints, and turns them into a short adventure recap.&lt;/p&gt;

&lt;p&gt;The rest of the application stays deterministic.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;GPS calculations → application code&lt;/li&gt;
&lt;li&gt;XP → application code&lt;/li&gt;
&lt;li&gt;badges → application code&lt;/li&gt;
&lt;li&gt;challenge state → application code&lt;/li&gt;
&lt;li&gt;creativity and interpretation → AI&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That became one of the main principles of the project:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;AI handles ambiguity. Code handles rules.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The live route is tracked with the browser Geolocation API and displayed using Leaflet and OpenStreetMap.&lt;/p&gt;

&lt;p&gt;I also added GPS filtering to reject inaccurate readings, tiny movements caused by drift, and unrealistic speed jumps.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why Does Open Innovation Matter?
&lt;/h2&gt;

&lt;p&gt;Open innovation matters a lot for WildMiles because the app works with potentially personal information:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;photos&lt;/li&gt;
&lt;li&gt;outdoor activity&lt;/li&gt;
&lt;li&gt;route data&lt;/li&gt;
&lt;li&gt;quest history&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Using an open-weight model through Ollama means the AI can run locally on the user's machine instead of depending entirely on a hosted AI API.&lt;/p&gt;

&lt;p&gt;That gives the project several benefits:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;more control over how data is processed&lt;/li&gt;
&lt;li&gt;no API key required for every request&lt;/li&gt;
&lt;li&gt;no per-request model cost&lt;/li&gt;
&lt;li&gt;freedom to experiment with prompts and models&lt;/li&gt;
&lt;li&gt;the ability to keep AI inference local&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;WildMiles is not fully offline because OpenStreetMap tiles and some mobile testing workflows still need connectivity, so I describe it as &lt;strong&gt;local-first&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;For me, that is one of the most interesting parts of the project: AI is powerful enough to create and verify the adventure without needing to be the center of the experience.&lt;/p&gt;




&lt;h2&gt;
  
  
  My Agent Session
&lt;/h2&gt;

&lt;p&gt;I did not publish a DevRelay session for this project.&lt;/p&gt;

&lt;p&gt;The app was built iteratively, starting with basic quest generation and then adding:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;structured AI quests&lt;/li&gt;
&lt;li&gt;XP and progression&lt;/li&gt;
&lt;li&gt;multimodal photo verification&lt;/li&gt;
&lt;li&gt;live GPS tracking&lt;/li&gt;
&lt;li&gt;GPS filtering&lt;/li&gt;
&lt;li&gt;OpenStreetMap routes&lt;/li&gt;
&lt;li&gt;challenge checkpoints&lt;/li&gt;
&lt;li&gt;AI adventure recaps&lt;/li&gt;
&lt;li&gt;mobile testing&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Prize Categories
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Best Use of Gemma
&lt;/h3&gt;

&lt;p&gt;WildMiles uses &lt;strong&gt;Gemma 3 4B&lt;/strong&gt; as the core AI model for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;quest generation&lt;/li&gt;
&lt;li&gt;multimodal photo verification&lt;/li&gt;
&lt;li&gt;post-run adventure recaps&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Gemma is not an optional feature in WildMiles. It is what makes every adventure dynamic.&lt;/p&gt;




&lt;h2&gt;
  
  
  Final Thought
&lt;/h2&gt;

&lt;p&gt;Most AI apps try to keep you engaged.&lt;/p&gt;

&lt;p&gt;WildMiles tries to do something different:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Generate the adventure, then get out of the way.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;For a challenge called &lt;strong&gt;Touch Grass&lt;/strong&gt;, that felt like exactly the right goal.&lt;/p&gt;

&lt;p&gt;🌿 &lt;strong&gt;AI creates the quest. You create the miles.&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
  </channel>
</rss>
