<?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: jalanindw</title>
    <description>The latest articles on DEV Community by jalanindw (@jalanindw).</description>
    <link>https://dev.to/jalanindw</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%2F1715010%2F06f969b0-1534-49f6-96f8-0df17a500a88.png</url>
      <title>DEV Community: jalanindw</title>
      <link>https://dev.to/jalanindw</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/jalanindw"/>
    <language>en</language>
    <item>
      <title>WildHarvest AI: 100% Offline Campfire Recipe Generator using Gemma 7B</title>
      <dc:creator>jalanindw</dc:creator>
      <pubDate>Thu, 08 Oct 2026 08:25:09 +0000</pubDate>
      <link>https://dev.to/jalanindw/wildharvest-ai-100-offline-campfire-recipe-generator-using-gemma-7b-43g7</link>
      <guid>https://dev.to/jalanindw/wildharvest-ai-100-offline-campfire-recipe-generator-using-gemma-7b-43g7</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;I built &lt;strong&gt;WildHarvest AI&lt;/strong&gt;, an offline-first campfire recipe generator designed for hikers, campers, and foragers. You simply input the ingredients you just foraged in the wild (e.g., wild mushrooms, bamboo shoots) and the app generates 3 safe, easy-to-cook recipe options using only your found ingredients and basic camping supplies (like a mess kit, salt, and water). &lt;/p&gt;

&lt;p&gt;It perfectly fits the "Touch Grass" theme because it encourages people to get out into the woods, forage responsibly, and cook outdoors, all while bringing a smart chef along in their backpack.&lt;/p&gt;

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

&lt;p&gt;&lt;a href="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%2Fi93spqkinqf2ekw7grzb.png" class="article-body-image-wrapper"&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%2Fi93spqkinqf2ekw7grzb.png" alt="First page of Ai" width="800" height="404"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="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%2Fekikm9oa8os2ztd1p21w.png" class="article-body-image-wrapper"&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%2Fekikm9oa8os2ztd1p21w.png" alt="Result from generate AI" width="753" height="957"&gt;&lt;/a&gt;&lt;/p&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/dimaswahyu-official" rel="noopener noreferrer"&gt;
        dimaswahyu-official
      &lt;/a&gt; / &lt;a href="https://github.com/dimaswahyu-official/WildHarvest-AI" rel="noopener noreferrer"&gt;
        WildHarvest-AI
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Collecting what you see in wild and i'll make a recipe's for that using Gemma:7b
    &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;🌲 WildHarvest AI&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;WildHarvest AI&lt;/strong&gt; is a 100% offline, local-first campfire recipe generator built for hikers, campers, and foragers. This project is an official submission for the &lt;strong&gt;Hacktoberfest 2026 DEV Challenge (Week 1: Touch Grass)&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;When you are deep in the woods, you don't have internet access. This application solves that by running a local AI model to turn your foraged ingredients into safe, actionable campfire recipes without needing a single bar of cell service.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;✨ Features&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;100% Offline Inference:&lt;/strong&gt; Powered by Google's open-weight Gemma model running entirely on your local machine via Ollama.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Strict Ingredient Bounding:&lt;/strong&gt; The AI is highly constrained to &lt;em&gt;only&lt;/em&gt; use the ingredients you actually found, plus basic camping supplies (water, salt, oil, etc.). No hallucinated ingredients!&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Campfire Ready:&lt;/strong&gt; Recipes are designed to be cooked outdoors using basic mess kits or portable stoves.&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🛠️ Tech Stack&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Frontend:&lt;/strong&gt; Next.js (App Router), React, Tailwind CSS&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AI Integration:&lt;/strong&gt;…&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/dimaswahyu-official/WildHarvest-AI" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;&lt;em&gt;(Note: I pivoted the project from a dessert app to a foraging app during the hackathon to better fit the theme, but the core engine remains the same!)&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;I built the frontend using Next.js (App Router) and Tailwind CSS. The core intelligence is powered by Google's open-weight &lt;strong&gt;Gemma (7B)&lt;/strong&gt; model, running entirely locally on my machine via &lt;strong&gt;Ollama&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;To make the AI act like a strict campfire chef, I created a custom Next.js Route Handler that talks to the local Ollama API. I set the model's &lt;code&gt;temperature&lt;/code&gt; to &lt;code&gt;0.1&lt;/code&gt; and wrote a highly constrained system prompt to prevent the AI from hallucinating ingredients the user didn't actually find.&lt;/p&gt;

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

&lt;p&gt;For a foraging and camping app, open innovation isn't just a nice-to-have; it is the only way the app functions. &lt;/p&gt;

&lt;p&gt;When you are deep in the woods or at a campsite ("touching grass"), you rarely have a stable internet connection. If I had built this using a closed, cloud-based API like OpenAI or Claude, the app would be completely useless on the trail. By using an open-weight model like Gemma running locally on a laptop via Ollama, the entire AI inference happens offline. Open innovation made it possible to bring powerful AI into the wilderness without needing a single bar of cell service.&lt;/p&gt;

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

&lt;p&gt;&lt;em&gt;(N/A - I built the logic directly based on local LLM experimentation)&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;I am submitting this project for the following category:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of Gemma:&lt;/strong&gt; The project relies entirely on Google's open-weight Gemma model running locally for its offline recipe generation logic.&lt;/li&gt;
&lt;/ul&gt;

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