<?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: Harshit Agarwal</title>
    <description>The latest articles on DEV Community by Harshit Agarwal (@harshit_agarwal).</description>
    <link>https://dev.to/harshit_agarwal</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%2F3919993%2F1369f557-0527-4f4f-b44b-12c2d6bfa85a.jpg</url>
      <title>DEV Community: Harshit Agarwal</title>
      <link>https://dev.to/harshit_agarwal</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/harshit_agarwal"/>
    <language>en</language>
    <item>
      <title>Ghostwriter AI: What if the AI Storyteller Remembers Every Mistake You Make?</title>
      <dc:creator>Harshit Agarwal</dc:creator>
      <pubDate>Wed, 28 Oct 2026 07:04:10 +0000</pubDate>
      <link>https://dev.to/harshit_agarwal/ghostwriter-ai-what-if-the-ai-storyteller-remembers-every-mistake-you-make-h41</link>
      <guid>https://dev.to/harshit_agarwal/ghostwriter-ai-what-if-the-ai-storyteller-remembers-every-mistake-you-make-h41</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-week4-2026-10-26"&gt;Hacktoberfest Open-Source AI Challenge Week 4: Ghost in the Machine&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Ghostwriter AI — Every Choice Leaves a Scar&lt;/strong&gt; is an interactive, unscripted gothic horror storytelling generator designed to give players genuine narrative agency while confronting them with the indelible consequences of their decisions.&lt;/p&gt;

&lt;p&gt;Traditional text adventures rely on static, pre-written decision branches: choose option A or B to jump to passage 12 or 13. Conversely, modern conversational AI chatbots often suffer from narrative amnesia, abrupt tonal drift, or cheerful assistant personas that completely dissolve suspense.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Interpretation of "Ghost in the Machine"
&lt;/h3&gt;

&lt;p&gt;In gothic folklore, a haunting is an unresolved echo of past trauma trapped inside an environment. In &lt;strong&gt;Ghostwriter AI&lt;/strong&gt;, the &lt;em&gt;"Ghost"&lt;/em&gt; is the persistent memory ledger trapped within the machine. &lt;/p&gt;

&lt;p&gt;The machine does not just generate words—&lt;strong&gt;it holds a grudge&lt;/strong&gt;. As you explore eerie domains (from the decaying halls of Blackwood Manor to abandoned sanitariums and cursed hamlets), the engine continuously tracks your discovered clues, psychological wounds, unprompted actions, and fateful decisions. Every choice leaves an irreversible scar on the narrative ledger, culminating in a climactic autopsy ending (&lt;em&gt;Escape&lt;/em&gt;, &lt;em&gt;Survival with a cost&lt;/em&gt;, &lt;em&gt;Tragic ending&lt;/em&gt;, &lt;em&gt;Supernatural revelation&lt;/em&gt;, or &lt;em&gt;Hidden ending&lt;/em&gt;).&lt;/p&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;GitHub Repository&lt;/strong&gt;: &lt;a href="https://github.com/Harshitagarwal113/GhostWriter-AI" rel="noopener noreferrer"&gt;https://github.com/Harshitagarwal113/GhostWriter-AI&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Visual Preview &amp;amp; Experience
&lt;/h3&gt;

&lt;p&gt;The application features a dark gothic aesthetic inspired by classic horror literature:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Atmospheric Palette&lt;/strong&gt;: Near-black charcoal backgrounds (&lt;code&gt;#0a0a0c&lt;/code&gt;), dynamic vignette, subtle SVG noise film grain, and restrained blood-red accents.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cinematic Typography&lt;/strong&gt;: &lt;em&gt;Cinzel&lt;/em&gt; for regal titles and headers, &lt;em&gt;EB Garamond&lt;/em&gt; with dedicated dialogue styling for story passages, and &lt;em&gt;Inter&lt;/em&gt; for accessible UI controls.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Interactive Consequence Ledger&lt;/strong&gt;: The collapsible &lt;em&gt;"What the darkness remembers"&lt;/em&gt; panel dynamically displays clues, inventory relics, character states, and permanent scars.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Unscripted Agency&lt;/strong&gt;: Players can choose from three dynamically generated choices (with keyboard shortcuts &lt;code&gt;[1]&lt;/code&gt;, &lt;code&gt;[2]&lt;/code&gt;, &lt;code&gt;[3]&lt;/code&gt;) or type freeform custom actions (e.g., &lt;em&gt;"Press your fingertips against the peeling wallpaper near the hearth to feel for drafts"&lt;/em&gt;).&lt;/li&gt;
&lt;/ul&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/Harshitagarwal113" rel="noopener noreferrer"&gt;
        Harshitagarwal113
      &lt;/a&gt; / &lt;a href="https://github.com/Harshitagarwal113/GhostWriter-AI" rel="noopener noreferrer"&gt;
        GhostWriter-AI
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      
    &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;Ghostwriter AI — Every Choice Leaves a Scar&lt;/h1&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;An unscripted interactive horror-story generator where the machine remembers your decisions, powered by Google's open-weight Gemma model via the Gemini API.&lt;/strong&gt;&lt;br&gt;
Built for the &lt;strong&gt;DEV.to Hacktoberfest Week 4 2026&lt;/strong&gt; Challenge: &lt;em&gt;"Ghost in the Machine"&lt;/em&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://github.com/Harshitagarwal113/GhostWriter-AI/docs/thumbnail.jpg"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fraw.githubusercontent.com%2FHarshitagarwal113%2FGhostWriter-AI%2FHEAD%2Fdocs%2Fthumbnail.jpg" alt="Ghostwriter AI Banner"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;📖 The Problem and Creative Concept&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;Traditional text adventures and branching narrative games rely on pre-written decision trees. If you choose Door A, you get pre-baked Paragraph 12; if you choose Door B, you get pre-baked Paragraph 13. While predictable, this approach limits player agency and quickly loses tension once branches are discovered.&lt;/p&gt;
&lt;p&gt;On the other hand, unstructured conversational AI chatbots lack memory discipline: they frequently suffer from tone drift, forget past decisions within a few turns, and lack pacing or stakes.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ghostwriter AI&lt;/strong&gt; bridges this gap
It acts as an intelligent, literary storyteller that weaves genuine gothic horror. Every choice you select—or custom unscripted action you…&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/Harshitagarwal113/GhostWriter-AI" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;Direct Repository Link: &lt;strong&gt;&lt;a href="https://github.com/Harshitagarwal113/GhostWriter-AI" rel="noopener noreferrer"&gt;https://github.com/Harshitagarwal113/GhostWriter-AI&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;




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

&lt;p&gt;Ghostwriter AI is built as a decoupled, high-performance full-stack web application designed for deterministic state management and zero-leak AI inference.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;GhostWriter AI/
├── frontend/                 # React 19 + TypeScript + Tailwind CSS + Vite
│   ├── src/
│   │   ├── components/       # AtmosphericBackground, StoryChoices, DarknessLedger, etc.
│   │   ├── pages/            # LandingPage, StorySetupPage, StoryPlayerPage, EndingPage
│   │   ├── hooks/            # useStorySession, useApiHealth
│   │   ├── services/api.ts   # Centralized Fetch API client with timeouts &amp;amp; retry logic
│   │   └── types/story.ts    # Type-safe TypeScript contracts
├── backend/                  # Python 3.14 + FastAPI + Pydantic v2 + google-genai
│   ├── app/
│   │   ├── api/routes.py     # /api/health, /api/story/start, /api/story/advance
│   │   ├── services/         # gemma_client.py, story_engine.py, story_memory.py
│   │   ├── prompts/          # storyteller.py (gothic system instructions &amp;amp; templates)
│   │   └── main.py           # FastAPI server with CORS &amp;amp; error handlers
│   └── tests/                # 13 automated Pytest unit and integration tests
└── README.md
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  The AI Engine: Google's Open-Weight Gemma Model
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Model&lt;/strong&gt;: Google's open-weight &lt;strong&gt;Gemma model&lt;/strong&gt; (&lt;code&gt;gemma-4-26b-a4b-it&lt;/code&gt; default, &lt;code&gt;gemma-4-31b-it&lt;/code&gt; high-reasoning alternative).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Integration&lt;/strong&gt;: Implemented through Google's official &lt;strong&gt;Gen AI Python SDK&lt;/strong&gt; (&lt;code&gt;google-genai&lt;/code&gt;) and the Gemini API delivery endpoint.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bounded Retry &amp;amp; JSON Sanitation&lt;/strong&gt;: Language models can occasionally emit markdown code fences or non-JSON preamble. Our &lt;code&gt;gemma_client.py&lt;/code&gt; strips fences, isolates JSON object boundaries, and executes a bounded single-retry fallback to guarantee valid structured schemas without redundant token consumption.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pacing Engine&lt;/strong&gt;: To prevent open-ended AI rambling, story length budgets (Short: 3–4 scenes, Medium: 5–7 scenes, Long: 8–10 scenes) guide Gemma from escalating tension directly into a fateful climax.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Automated Test Suite&lt;/strong&gt;: 13 automated unit tests cover health reporting, Pydantic input validation, mocked story progression, custom action resolution, and CORS preflight.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;Open innovation and open-weight models like &lt;strong&gt;Gemma&lt;/strong&gt; are transformative for interactive fiction and creative AI development:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Transparency &amp;amp; Auditable Alignment&lt;/strong&gt;: Unlike proprietary black-box APIs whose system prompts, tokenizers, and alignment penalties can change without notice, open-weight models give developers full insight into model behavior, allowing creators to craft precise narrative systems with confidence.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Creative Literary Expression Without Sanitization&lt;/strong&gt;: Horror fiction relies on psychological tension, dread, and eerie themes. Closed commercial models often over-censor atmospheric horror prompts into bland cheerful statements. Open models respect literary nuance while keeping safety boundaries intact.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reproducibility &amp;amp; Longevity&lt;/strong&gt;: An interactive story built on open standards won't break if a vendor deprecates a proprietary endpoint. Developers can run open weights locally, fine-tune them on gothic literature corpora, or deploy them through hosted APIs.&lt;/li&gt;
&lt;/ol&gt;




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

&lt;p&gt;This application was developed, tested, and integrated with the assistance of agentic pair-programming workflows:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Conversation ID: acff272d-74b8-48dc-9bf7-171b332d47c4
Tooling: DevRelay Gateway, Google Gen AI Python SDK, Browser Subagent Verification
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  The Spirit of It
&lt;/h2&gt;

&lt;p&gt;During our live test of the &lt;em&gt;Haunted Mansion&lt;/em&gt; scenario, the protagonist Eleanor encountered a weeping portrait over an ancient hearth. Instead of taking a pre-generated choice, we tested the custom action input:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Player Action&lt;/strong&gt;: &lt;em&gt;"Press your fingertips against the peeling wallpaper near the hearth to feel for drafts."&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Gemma didn't give a canned response. It adapted to her exact touch:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"Eleanor's fingers brush against the desiccated, floral patterns of the wallpaper... beneath the layer of decay, her touch finds the unmistakable, sharp edge of a recessed latch, cold as a tombstone. A hollow, rhythmic tremor shudders through the wall—vibrating like a biological pulse."&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;When she manipulated the latch in the final scene, the climax landed with true chills:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"There is a wet, sickening sound—the sound of a suture tearing through muscle. The wall does not swing on hinges; it peels back like a heavy, weeping eyelid... Eleanor discovers that Blackwood Manor is not a house, but a predatory, sentient organism."&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The memory ledger immediately updated her status to &lt;strong&gt;"Sensory assimilation"&lt;/strong&gt; and &lt;strong&gt;"Fatal entrapment"&lt;/strong&gt;, sealing her fate in &lt;em&gt;"The Eternal Pulse"&lt;/em&gt; ending. That was the moment the project truly came alive: the machine wasn't just predicting the next token—it was remembering her curiosity and turning it into her undoing.&lt;/p&gt;




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

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Hacktoberfest Open-Source AI Challenge Week 4: "Ghost in the Machine"&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>Project Janitor: The 100% Offline AI File Organizer with Zero Cloud Egress &amp; Instant Undo</title>
      <dc:creator>Harshit Agarwal</dc:creator>
      <pubDate>Fri, 23 Oct 2026 18:10:52 +0000</pubDate>
      <link>https://dev.to/harshit_agarwal/project-janitor-the-100-offline-ai-file-organizer-with-zero-cloud-egress-instant-undo-1kpd</link>
      <guid>https://dev.to/harshit_agarwal/project-janitor-the-100-offline-ai-file-organizer-with-zero-cloud-egress-instant-undo-1kpd</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-week3-2026-10-19"&gt;Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Project Janitor&lt;/strong&gt; is an intelligent, privacy-first desktop file organizer and duplicate file manager for Windows. It solves a universal digital headache: the chaotic accumulation of redundant downloads, scattered project archives, unorganized documents, and duplicated media across personal workspaces.&lt;/p&gt;

&lt;p&gt;Instead of spending hours manually sorting through nested folders, comparing modification timestamps, or risking accidental deletion of important files, Project Janitor automates the entire cleanup lifecycle with deterministic safety:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;High-Speed Filesystem Scanner&lt;/strong&gt;: Indexes target folders in milliseconds using read-only &lt;code&gt;os.scandir&lt;/code&gt; and maps files into 7 structured categories (&lt;code&gt;documents&lt;/code&gt;, &lt;code&gt;images&lt;/code&gt;, &lt;code&gt;videos&lt;/code&gt;, &lt;code&gt;audio&lt;/code&gt;, &lt;code&gt;archives&lt;/code&gt;, &lt;code&gt;code&lt;/code&gt;, &lt;code&gt;other&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cryptographic Duplicate Detection&lt;/strong&gt;: Groups files by exact byte size and computes chunked SHA-256 hashes to guarantee bit-for-bit identity. Identifies one canonical copy to retain and flags redundant copies without ever deleting files automatically.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local Google Gemma AI Classification&lt;/strong&gt;: Leverages open-weight &lt;strong&gt;Google Gemma 2B&lt;/strong&gt; running on-device via &lt;strong&gt;Ollama&lt;/strong&gt; to analyze text files, infer context, suggest descriptive filenames, and categorize ambiguous items—all with 100% offline privacy.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dry-Run Cleanup Planner&lt;/strong&gt;: Proposes clean directory layouts (&lt;code&gt;By Category&lt;/code&gt;, &lt;code&gt;By Date&lt;/code&gt;, or &lt;code&gt;Flat Root&lt;/code&gt;) and automatically resolves naming collisions with numeric suffixes (&lt;code&gt;_1&lt;/code&gt;, &lt;code&gt;_2&lt;/code&gt;). Files are never modified during planning.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Explicit Approval &amp;amp; Transactional Undo&lt;/strong&gt;: Every approved file move is logged into an ACID-compliant local SQLite journal (&lt;code&gt;data/janitor_journal.db&lt;/code&gt;), enabling instant, one-click reversible rollback for single operations or full plans.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Who Gets to Be a Little Lazier?
&lt;/h3&gt;

&lt;p&gt;Developers, designers, researchers, and everyday Windows power users who dread the manual chore of organizing their &lt;code&gt;Downloads&lt;/code&gt;, &lt;code&gt;Desktop&lt;/code&gt;, or sprawling project directories. You can clean up hundreds of disorganized files in under 30 seconds with complete peace of mind, knowing that every action is previewed, confirmed, and completely reversible.&lt;/p&gt;




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

&lt;p&gt;Project Janitor features a clean, minimalist desktop application interface built with React 19, Tailwind CSS v4, and Lucide icons:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. System Overview Dashboard
&lt;/h3&gt;

&lt;p&gt;Live monitoring of indexed storage volume, category distribution bar charts, recorded journal operations, and local Ollama / Gemma AI availability—with zero invented statistics.&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%2Fmqnboyqmlo70wjqvjhzs.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%2Fmqnboyqmlo70wjqvjhzs.png" alt="System Overview Dashboard" width="799" height="519"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Multi-Stage Workflow
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Folder Scanner&lt;/strong&gt;: Scans user-authorized directories while strictly protecting drive roots (&lt;code&gt;C:\&lt;/code&gt;, &lt;code&gt;D:\&lt;/code&gt;) from accidental selection.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Scan Results&lt;/strong&gt;: Paginated explorer with live search and category filters.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Duplicate Review&lt;/strong&gt;: Displays verified SHA-256 match groups, retained copies, and potential reclaimable storage.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cleanup Plan Review&lt;/strong&gt;: Highlights dry-run recommendations (&lt;code&gt;PROPOSED DRY-RUN&lt;/code&gt; badge), proposed destinations, rationale, and confidence scores.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Approval Modal&lt;/strong&gt;: Demands explicit checkbox confirmation with an interactive preview of every operation awaiting execution.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;History &amp;amp; Rollback&lt;/strong&gt;: Complete transactional audit trail with verified one-click rollback.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;The complete source code is open-source under the permissive MIT License:&lt;/p&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/Harshitagarwal113" rel="noopener noreferrer"&gt;
        Harshitagarwal113
      &lt;/a&gt; / &lt;a href="https://github.com/Harshitagarwal113/Project-Janitor" rel="noopener noreferrer"&gt;
        Project-Janitor
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      A 100% offline, privacy-first desktop file organizer and SHA-256 duplicate manager with local Gemma AI and reversible SQLite undo.
    &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;🧹 Project Janitor&lt;/h1&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Deterministic, Privacy-First Desktop Storage Organizer &amp;amp; Duplicate Manager with Local AI for Windows.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href="https://fastapi.tiangolo.com" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/ad390e9189c4d9f4559f019dc62ee9a3fe6c4e7eb85772a924cc77fe624ec4d3/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f466173744150492d302e3131352b2d3030393638383f7374796c653d666c6174266c6f676f3d66617374617069266c6f676f436f6c6f723d7768697465" alt="FastAPI"&gt;&lt;/a&gt;
&lt;a href="https://react.dev" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/5c0381d073194f90b56fe2c38dff72af91f80679e58d35a61dbfb4fe2b8d6da6/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f52656163742d31392e332b2d3631444146423f7374796c653d666c6174266c6f676f3d7265616374266c6f676f436f6c6f723d626c61636b" alt="React"&gt;&lt;/a&gt;
&lt;a href="https://www.typescriptlang.org" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/7870bca769163960c5dffd802f011b7c93b8f86e9d6f7611ef0ba905b348fefc/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f547970655363726970742d352e302b2d3331373843363f7374796c653d666c6174266c6f676f3d74797065736372697074266c6f676f436f6c6f723d7768697465" alt="TypeScript"&gt;&lt;/a&gt;
&lt;a href="https://tailwindcss.com" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/a2829687745d2a4272811a4d6e32703b703204ab6881b3bcc7bd0faa0988da78/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5461696c77696e645f4353532d76342d3338423241433f7374796c653d666c6174266c6f676f3d7461696c77696e642d637373266c6f676f436f6c6f723d7768697465" alt="TailwindCSS"&gt;&lt;/a&gt;
&lt;a href="https://vitejs.dev" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/fec324d3207a7571096d084c3eb18b117b1294a977267db0dcb5f3cd7a3bd5e4/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f566974652d362e302b2d3634364346463f7374796c653d666c6174266c6f676f3d76697465266c6f676f436f6c6f723d7768697465" alt="Vite"&gt;&lt;/a&gt;
&lt;a href="https://ollama.com" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/caa9476b7de9255db3400e3c6ceb1ef330078ae3c2529c5ed64bc4f163b18c13/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4f6c6c616d612d47656d6d615f32422d77686974653f7374796c653d666c6174266c6f676f3d6f6c6c616d61266c6f676f436f6c6f723d626c61636b" alt="Ollama"&gt;&lt;/a&gt;
&lt;a href="https://github.com/Harshitagarwal113/Project-Janitor#security--safety-invariants" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/c339364a37f7d2e99778b9ab5c2688b09f8eb9ffcada3961aa51c8563ac1472c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f507269766163792d3130302532355f4c6f63616c2d626c61636b" alt="Privacy: 100% Offline"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Overview&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Project Janitor&lt;/strong&gt; is an offline system utility for Windows that analyzes messy directories, detects exact byte-for-byte duplicates using cryptographic SHA-256 hashes, generates dry-run cleanup plans with optional local Google Gemma 2B AI, and executes file moves with an explicit review step and reversible SQLite rollback.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;100% Local&lt;/strong&gt;: No cloud subscriptions, no telemetry, and zero paid API keys.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Non-Destructive&lt;/strong&gt;: Never deletes files automatically. Duplicates are flagged for manual review.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Transactional Rollback&lt;/strong&gt;: Every move/rename is recorded in a local SQLite journal (&lt;code&gt;data/janitor_journal.db&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Offline AI Fallback&lt;/strong&gt;: Runs with local Gemma 2B via Ollama. Falls back to deterministic rules if offline.&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Core Capabilities&lt;/h2&gt;
&lt;/div&gt;
&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Capability&lt;/th&gt;
&lt;th&gt;Method&lt;/th&gt;
&lt;th&gt;Key Benefit&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Recursive Scanner&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Non-blocking, read-only &lt;code&gt;os.scandir&lt;/code&gt; with path containment&lt;/td&gt;
&lt;td&gt;Categorizes into 7 types; blocks drive roots (&lt;code&gt;C:\&lt;/code&gt;, &lt;code&gt;D:\&lt;/code&gt;)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Exact Duplicate Engine&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Size&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;…&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/Harshitagarwal113/Project-Janitor" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;&lt;strong&gt;Repository&lt;/strong&gt;: &lt;a href="https://github.com/Harshitagarwal113/Project-Janitor" rel="noopener noreferrer"&gt;https://github.com/Harshitagarwal113/Project-Janitor&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Architecture Highlights:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Frontend (&lt;code&gt;frontend/&lt;/code&gt;)&lt;/strong&gt;: React 19, TypeScript (strict typechecking), Vite 6, Tailwind CSS v4, Lucide React, Vitest.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backend (&lt;code&gt;backend/&lt;/code&gt;)&lt;/strong&gt;: FastAPI, Pydantic v2, Python 3.12+, Uvicorn, pytest, pytest-asyncio.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Database (&lt;code&gt;data/&lt;/code&gt;)&lt;/strong&gt;: Isolated SQLite transaction journal (&lt;code&gt;janitor_journal.db&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AI Service (&lt;code&gt;backend/app/services/ollama.py&lt;/code&gt;)&lt;/strong&gt;: Local Ollama HTTP REST client with prompt injection isolation.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;Project Janitor was architected from the ground up around &lt;strong&gt;open-source AI and local edge inference&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;pre data-lang="mermaid"&gt;&lt;code&gt;graph LR
    User["User Target Folder"] --&amp;gt; Scanner["Read-Only Scanner"]
    Scanner --&amp;gt; Duplicates["SHA-256 Engine"]
    Duplicates --&amp;gt; Planner["Dry-Run Planner"]
    Planner &amp;lt;--&amp;gt; Gemma["Local Google Gemma 2B (Ollama)"]
    Planner --&amp;gt; Approval["Explicit Approval Dialog"]
    Approval --&amp;gt; Executor["Atomic Shutil Execution"]
    Executor &amp;lt;--&amp;gt; Journal[("SQLite Transaction Journal")]&lt;/code&gt;&lt;/pre&gt;



&lt;h3&gt;
  
  
  1. Open-Source AI: Google Gemma 2B
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;We utilized &lt;strong&gt;Google Gemma 2B&lt;/strong&gt; (&lt;code&gt;gemma:2b&lt;/code&gt;), an open-weight model developed by Google DeepMind.&lt;/li&gt;
&lt;li&gt;Gemma 2B was chosen specifically for its balance of strong language understanding, lightweight footprint, and fast token generation.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Local Inference via Ollama
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Rather than relying on cloud endpoints, Project Janitor communicates directly with a locally running &lt;strong&gt;Ollama&lt;/strong&gt; daemon at &lt;code&gt;http://127.0.0.1:11434&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;4 GB VRAM Optimization&lt;/strong&gt;: When quantized to Q4_K_M, Gemma 2B uses ~1.7 GB to 2.2 GB VRAM. This fits comfortably within the 4 GB VRAM ceiling of entry-level developer laptops (such as the NVIDIA GeForce RTX 3050 Laptop GPU), leaving ample memory for the Windows Desktop Window Manager and system displays without CUDA out-of-memory errors.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. Untrusted Prompt Sandboxing &amp;amp; Security
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;To prevent prompt injection attacks from malicious files on disk, text file samples (maximum 1,500 characters) are encapsulated inside strict XML isolation boundaries:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight xml"&gt;&lt;code&gt;  &lt;span class="nt"&gt;&amp;lt;untrusted_file_content&amp;gt;&lt;/span&gt;
  ... inert file content ...
  &lt;span class="nt"&gt;&amp;lt;/untrusted_file_content&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Binary files (&lt;code&gt;.exe&lt;/code&gt;, &lt;code&gt;.png&lt;/code&gt;, &lt;code&gt;.pdf&lt;/code&gt;, &lt;code&gt;.zip&lt;/code&gt;) are classified strictly from metadata without reading raw bytes.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  4. Structured JSON Output &amp;amp; Deterministic Fallback
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Ollama is invoked with &lt;code&gt;format: "json"&lt;/code&gt; and &lt;code&gt;temperature: 0.0&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;All model responses are validated through strict Pydantic schemas (&lt;code&gt;AIClassificationResponse&lt;/code&gt;). Any malformed output, out-of-bounds confidence scores, or service timeouts immediately fall back to deterministic rule heuristics with &lt;strong&gt;zero loss of system safety&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;Open innovation is not just an alternative for Project Janitor—&lt;strong&gt;it is the only viable architecture&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Absolute Storage Privacy&lt;/strong&gt;: Filesystems hold user tax filings, medical records, proprietary source code, private keys, and personal photos. Sending file paths, filenames, or content excerpts to closed-source cloud APIs (OpenAI, Anthropic) violates fundamental privacy expectations. Open innovation keeps data strictly inside the user's machine.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero Cost &amp;amp; Infinite Shelf Life&lt;/strong&gt;: Closed AI APIs impose monthly subscriptions, credit card requirements, token fees, and rate limits. With open-weight models like Gemma running on open-source runtimes like Ollama, Project Janitor is 100% free forever, operates completely offline in airplane mode, and never suffers vendor deprecation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Auditable Code &amp;amp; Reproducible Safety&lt;/strong&gt;: Filesystem operations require absolute trust. Open-source innovation allows anyone to inspect our path validation, cryptographic hashing, and transaction rollback engines to verify that files are never secretly sent elsewhere or deleted without permission.&lt;/li&gt;
&lt;/ol&gt;




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

&lt;p&gt;Project Janitor was developed using the &lt;strong&gt;Google DeepMind Antigravity IDE&lt;/strong&gt; pair-programming agent workflow. Across 10 structured engineering phases:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The agent designed and verified the decoupled architecture, ensuring strict boundaries between the React SPA and the FastAPI engine.&lt;/li&gt;
&lt;li&gt;Implemented comprehensive automated test suites: &lt;strong&gt;57 backend pytest tests&lt;/strong&gt; (covering path sandboxing, duplicate hashing, AI schema validation, and rollback) and &lt;strong&gt;20 frontend Vitest tests&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Conducted real end-to-end browser subagent testing on Windows to verify the complete user journey: scanning $\rightarrow$ duplicate review $\rightarrow$ dry-run planning $\rightarrow$ approval modal $\rightarrow$ execution $\rightarrow$ transactional undo.&lt;/li&gt;
&lt;li&gt;Synthesized community best practices around non-destructive filesystem design patterns and explicit imperative confirmation modals.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  The Lazy Payoff
&lt;/h2&gt;

&lt;h3&gt;
  
  
  The Numbers:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Manual Sorting Time&lt;/strong&gt;: ~45 minutes to sort 250 messy downloads, verify duplicates, create folders, and move files.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Project Janitor Time&lt;/strong&gt;: &lt;strong&gt;15 seconds&lt;/strong&gt; to scan, detect duplicates, generate a dry-run plan, and execute.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Time Saved&lt;/strong&gt;: ~99% reduction in manual effort.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  The Real Payoff: "Anxiety-Free" Laziness
&lt;/h3&gt;

&lt;p&gt;The hardest part of organizing files isn't dragging and dropping—it's the mental anxiety of &lt;em&gt;"What if I accidentally delete an important file or break a project path?"&lt;/em&gt; &lt;/p&gt;

&lt;p&gt;Project Janitor's &lt;strong&gt;Dry-Run Preview&lt;/strong&gt;, &lt;strong&gt;Explicit Approval Checkbox&lt;/strong&gt;, and &lt;strong&gt;One-Click Transactional SQLite Rollback&lt;/strong&gt; remove all anxiety. You can be lazy and let the organizer tidy up your entire directory knowing that every single file move can be instantly undone with one click.&lt;/p&gt;




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

&lt;h3&gt;
  
  
  🏆 Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Category&lt;/strong&gt;: Built with open-weight models (Google Gemma 2B) and open-source local inference (Ollama) on Windows.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Track&lt;/strong&gt;: Offline Edge AI, Developer Productivity &amp;amp; Open-Source System Utilities.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>DukaanVikaas: Offline Kirana AI Billing</title>
      <dc:creator>Harshit Agarwal</dc:creator>
      <pubDate>Thu, 15 Oct 2026 15:08:01 +0000</pubDate>
      <link>https://dev.to/harshit_agarwal/dukaanvikaas-offline-kirana-ai-billing-3bjb</link>
      <guid>https://dev.to/harshit_agarwal/dukaanvikaas-offline-kirana-ai-billing-3bjb</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-week2-2026-10-12"&gt;Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;DukaanVikaas (दुकान विकास)&lt;/strong&gt; is a 100% browser-native, offline-first inventory and point-of-sale (POS) billing application crafted specifically for India's 12+ million neighborhood Kirana stores and micro-retailers.&lt;/p&gt;

&lt;p&gt;It enables shopkeepers to record sales using conversational, regional language commands (such as &lt;em&gt;"5 packet Maggi bike"&lt;/em&gt;, &lt;em&gt;"3 Thums Up sell thai"&lt;/em&gt;, &lt;em&gt;"2 packet biscuit bech diye"&lt;/em&gt;, or compound sentences like &lt;em&gt;"Aaj 5 packet Maggi aur 3 cold drink bike"&lt;/em&gt;). It tracks inventory levels atomically, warns against stockouts, generates dynamic revenue analytics, supports instant one-click bill reversals with compensating return audit logs, and allows offline versioned JSON backups—all running with zero latency directly within the merchant's browser.&lt;/p&gt;

&lt;h3&gt;
  
  
  Who Would Pay For It &amp;amp; What Problem Does It Solve?
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;The Problem&lt;/strong&gt;: Small Indian Kirana stores operate on razor-thin margins in fast-paced retail environments, often in semi-urban or rural areas plagued by erratic power and intermittent internet. Traditional enterprise billing software (like Tally, Marg, or Vyapar) is expensive, hardware-dependent, clunky, and overwhelmingly English-first. Conversely, cloud-only SaaS apps crash when the internet drops in the middle of a rush-hour customer queue.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The Solution&lt;/strong&gt;: DukaanVikaas requires &lt;strong&gt;zero server backend&lt;/strong&gt;, &lt;strong&gt;zero cloud databases&lt;/strong&gt;, &lt;strong&gt;zero API keys&lt;/strong&gt;, and &lt;strong&gt;zero subscription fees&lt;/strong&gt;. It runs on any inexpensive Android smartphone, tablet, or desktop browser.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Who Pays / Economic Value&lt;/strong&gt;: Small retailers, FMCG distributors, and micro-merchants save thousands of rupees in monthly software subscriptions, hardware POS rentals, and lost revenue from network downtime.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;ul&gt;
&lt;li&gt;🌐 &lt;strong&gt;Live Deployed Application&lt;/strong&gt;: &lt;a href="https://dukaan-vikaas.vercel.app/" rel="noopener noreferrer"&gt;https://dukaan-vikaas.vercel.app/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;💻 &lt;strong&gt;GitHub Repository&lt;/strong&gt;: &lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas" rel="noopener noreferrer"&gt;https://github.com/Harshitagarwal113/DukaanVikaas&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Key Workflows to Explore in the Demo:
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Natural Language Assistant&lt;/strong&gt;: Tap &lt;strong&gt;"AI Bill Entry"&lt;/strong&gt; on the dashboard. Click sample prompts like &lt;code&gt;"5 packet Maggi bike"&lt;/code&gt; or &lt;code&gt;"3 Thums Up sell thai"&lt;/code&gt;, parse the command, observe automatic price derivation and stock check, and explicitly confirm the sale.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ambiguity Safety Guard&lt;/strong&gt;: Try typing an ambiguous command like &lt;code&gt;"2 cold drink bike"&lt;/code&gt;. Notice that the engine &lt;strong&gt;never silently guesses&lt;/strong&gt;—it identifies candidates (&lt;em&gt;Thums Up&lt;/em&gt;, etc.), prompts for exact confirmation, and disables checkout until verified.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Instant Multilingual Switching&lt;/strong&gt;: Switch between &lt;strong&gt;हिन्दी (Hindi)&lt;/strong&gt;, &lt;strong&gt;ગુજરાતી (Gujarati)&lt;/strong&gt;, &lt;strong&gt;Hinglish&lt;/strong&gt;, and &lt;strong&gt;English&lt;/strong&gt; via the top header selector with zero page reload.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Stock Integrity &amp;amp; Sale Reversal&lt;/strong&gt;: Navigate to &lt;strong&gt;Sales History&lt;/strong&gt;, inspect any completed receipt, and click &lt;strong&gt;Reverse Sale&lt;/strong&gt;. Watch the item atomically return to inventory stock, an audit trail movement generated with reason &lt;code&gt;'return'&lt;/code&gt;, and today's revenue recalculate dynamically.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;JSON Backup &amp;amp; Restore&lt;/strong&gt;: Open &lt;strong&gt;Settings&lt;/strong&gt;, download &lt;code&gt;dukaan-vikaas-backup.json&lt;/code&gt;, inspect the schema validation, or preview before restoring.&lt;/li&gt;
&lt;/ol&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/Harshitagarwal113" rel="noopener noreferrer"&gt;
        Harshitagarwal113
      &lt;/a&gt; / &lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas" rel="noopener noreferrer"&gt;
        DukaanVikaas
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      DukaanVikaas — Browser-Native Kirana Store Inventory &amp;amp; Sales Manager with Offline Simulated NLP
    &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;DukaanVikaas (दुकान विकास) 🛒🌾&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href="https://dukaan-vikaas.vercel.app/" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/0a000574a1ddf5bfa807dd08e2a337ed6d08239edf3dffbd5d0117a32d96c7fd/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c69766525323044656d6f2d64756b61616e2d2d76696b6161732e76657263656c2e6170702d3036356634363f7374796c653d666f722d7468652d6261646765266c6f676f3d76657263656c266c6f676f436f6c6f723d7768697465" alt="Live Demo"&gt;&lt;/a&gt;
&lt;a href="https://nextjs.org/" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/6064d224c1b508f575e0ba6a043b6e244d9906445aef10bdc46317e2141d54e8/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4e6578742e6a732d31362e342e312d626c61636b3f7374796c653d666f722d7468652d6261646765266c6f676f3d6e6578742e6a73266c6f676f436f6c6f723d7768697465" alt="Next.js 16"&gt;&lt;/a&gt;
&lt;a href="https://react.dev/" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/d6b27459153d44c70ef95906db085944079619f116c2cfa478db26f227e5cb35/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f52656163742d31392e332e302d3631646166623f7374796c653d666f722d7468652d6261646765266c6f676f3d7265616374266c6f676f436f6c6f723d626c61636b" alt="React 19"&gt;&lt;/a&gt;
&lt;a href="https://www.typescriptlang.org/" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/a9f3283c10d4e27513ec8eeb3d07b91f6ec473f8e404d2fb5db0b9b17ceb56a0/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f547970655363726970742d352e302d3331373863363f7374796c653d666f722d7468652d6261646765266c6f676f3d74797065736372697074266c6f676f436f6c6f723d7768697465" alt="TypeScript"&gt;&lt;/a&gt;
&lt;a href="https://tailwindcss.com/" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/a4ad7a9db35dc06b76388dfd1a466ebc2a653485fbe948b942297c5f37fc2d62/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5461696c77696e645f4353532d76342e302d3338626466383f7374796c653d666f722d7468652d6261646765266c6f676f3d7461696c77696e642d637373266c6f676f436f6c6f723d7768697465" alt="Tailwind CSS 4"&gt;&lt;/a&gt;
&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas#-architecture--storage" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/28e22a31284a293f16a0e54410dc8998a37f8f17fdfbe05dc2945a99e4dd4766/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f44617461626173652d496e64657865644442253230283130302532352532304f66666c696e65292d3035393636393f7374796c653d666f722d7468652d6261646765266c6f676f3d73716c697465266c6f676f436f6c6f723d7768697465" alt="Storage"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;A minimal, high-performance, browser-native Kirana inventory and point-of-sale billing web application designed specifically for Indian neighborhood retail stores.&lt;/strong&gt;&lt;br&gt;
Built with an offline-first architecture powered completely by client-side &lt;strong&gt;IndexedDB&lt;/strong&gt;, deterministic &lt;strong&gt;simulated natural-language transaction parsing&lt;/strong&gt;, and browser-native &lt;strong&gt;JSON backups&lt;/strong&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;🌐 &lt;strong&gt;Live Application&lt;/strong&gt;: &lt;a href="https://dukaan-vikaas.vercel.app/" rel="nofollow noopener noreferrer"&gt;https://dukaan-vikaas.vercel.app/&lt;/a&gt;&lt;br&gt;
📦 &lt;strong&gt;GitHub Repository&lt;/strong&gt;: &lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas" rel="noopener noreferrer"&gt;https://github.com/Harshitagarwal113/DukaanVikaas&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;📖 Table of Contents&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas#-core-philosophy" rel="noopener noreferrer"&gt;Core Philosophy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas#-key-features" rel="noopener noreferrer"&gt;Key Features&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas#1-simulated-ai-natural-language-entry" rel="noopener noreferrer"&gt;1. Simulated AI Natural Language Entry&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas#2-real-time-kirana-dashboard" rel="noopener noreferrer"&gt;2. Real-Time Kirana Dashboard&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas#3-inventory--low-stock-management" rel="noopener noreferrer"&gt;3. Inventory &amp;amp; Low-Stock Management&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas#4-safe-point-of-sale-billing--reversal" rel="noopener noreferrer"&gt;4. Safe Point-of-Sale Billing &amp;amp; Reversal&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas#5-multilingual-vernacular-localization" rel="noopener noreferrer"&gt;5. Multilingual Vernacular Localization&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas#6-versioned-json-backup--restore" rel="noopener noreferrer"&gt;6. Versioned JSON Backup &amp;amp; Restore&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas#7-privacy--local-storage-disclaimers" rel="noopener noreferrer"&gt;7. Privacy &amp;amp; Local Storage Disclaimers&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas#-architecture--tech-stack" rel="noopener noreferrer"&gt;Architecture &amp;amp; Tech Stack&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas#-data-models--schema" rel="noopener noreferrer"&gt;Data Models &amp;amp; Schema&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas#-automated-testing--quality-assurance" rel="noopener noreferrer"&gt;Automated Testing &amp;amp; Quality Assurance&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas#-getting-started-locally" rel="noopener noreferrer"&gt;Getting Started Locally&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas#-deployment" rel="noopener noreferrer"&gt;Deployment&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas#-license" rel="noopener noreferrer"&gt;License&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;💡 Core Philosophy&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;Traditional retail SaaS platforms require continuous high-speed internet, monthly cloud subscription fees, complex authentication, and external databases that fail when network connectivity drops in rural or semi-urban areas.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;DukaanVikaas&lt;/strong&gt; is…&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/Harshitagarwal113/DukaanVikaas" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;The entire codebase is open-source, strictly typed, and structured into clean, modular layers:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas/blob/main/lib/ai/simulatedParser.ts" rel="noopener noreferrer"&gt;&lt;code&gt;lib/ai/simulatedParser.ts&lt;/code&gt;&lt;/a&gt;: 100% offline deterministic rule-based natural language parser with multilingual tokenizers, phonetic alias matching, and candidate suggestion guards.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas/blob/main/lib/storage/db.ts" rel="noopener noreferrer"&gt;&lt;code&gt;lib/storage/db.ts&lt;/code&gt;&lt;/a&gt;: Client-side IndexedDB multi-store architecture with atomic transactional integrity and signed audit movement logs.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas/blob/main/lib/validation/index.ts" rel="noopener noreferrer"&gt;&lt;code&gt;lib/validation/index.ts&lt;/code&gt;&lt;/a&gt;: Pre-import backup validator preventing corrupt schemas, negative pricing, and duplicate IDs.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas/blob/main/lib/i18n/LanguageContext.tsx" rel="noopener noreferrer"&gt;&lt;code&gt;lib/i18n/LanguageContext.tsx&lt;/code&gt;&lt;/a&gt;: Persistent vernacular state engine with memoized synchronization across local storage and IndexedDB.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/Harshitagarwal113/DukaanVikaas/blob/main/tests/runUnitTests.ts" rel="noopener noreferrer"&gt;&lt;code&gt;tests/runUnitTests.ts&lt;/code&gt;&lt;/a&gt;: 45-point automated test suite validating the NLP parser, business math, and schema integrity.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;Rather than relying on heavy, black-box cloud LLM APIs—which charge per token, introduce latency, require internet access, and risk catastrophic hallucinations in financial accounting—DukaanVikaas was designed around an &lt;strong&gt;open-source, client-side deterministic NLP engine and local-first architecture&lt;/strong&gt;:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Local Deterministic NLP Engine
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Conversational Tokenizer&lt;/strong&gt;: Cleans regional conversational prefixes (&lt;em&gt;aaj&lt;/em&gt;, &lt;em&gt;bhaiya&lt;/em&gt;, &lt;em&gt;sethji&lt;/em&gt;, &lt;em&gt;sun&lt;/em&gt;, &lt;em&gt;please&lt;/em&gt;) and verb suffixes (&lt;em&gt;bike&lt;/em&gt;, &lt;em&gt;bika&lt;/em&gt;, &lt;em&gt;bech diye&lt;/em&gt;, &lt;em&gt;sell thai&lt;/em&gt;, &lt;em&gt;vechya&lt;/em&gt;, &lt;em&gt;aapi&lt;/em&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Multilingual Numeral Normalization&lt;/strong&gt;: Maps written number words in Hindi, Gujarati, Devanagari, and English (&lt;em&gt;teen&lt;/em&gt;, &lt;em&gt;paanch&lt;/em&gt;, &lt;em&gt;tran&lt;/em&gt;, &lt;em&gt;દો&lt;/em&gt;, &lt;em&gt;પાંચ&lt;/em&gt;, &lt;em&gt;five&lt;/em&gt;) and fractional terms (&lt;em&gt;aadha&lt;/em&gt;, &lt;em&gt;half&lt;/em&gt;) to numbers.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Compound Sentence Parser&lt;/strong&gt;: Splits compound commands via regional conjunctions (&lt;em&gt;aur&lt;/em&gt;, &lt;em&gt;and&lt;/em&gt;, &lt;em&gt;ane&lt;/em&gt;, &lt;em&gt;तथा&lt;/em&gt;, commas) into separate transaction line items.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Fuzzy Catalog &amp;amp; Alias Scoring&lt;/strong&gt;: Matches items against product names, categories, and vernacular aliases (&lt;em&gt;मैगी&lt;/em&gt;, &lt;em&gt;આટા&lt;/em&gt;, &lt;em&gt;Desh Ka Namak&lt;/em&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero-Guess Ambiguity Guard&lt;/strong&gt;: If an input is ambiguous (e.g. general terms like &lt;em&gt;"biscuit"&lt;/em&gt; or &lt;em&gt;"cold drink"&lt;/em&gt;), the engine classifies the item as &lt;code&gt;needs_clarification&lt;/code&gt;, presents quick-pick buttons, and blocks checkout until the merchant explicitly confirms the item.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Browser-Native Storage &amp;amp; Tech Stack
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Next.js 16 (App Router + Turbopack)&lt;/strong&gt; &amp;amp; &lt;strong&gt;React 19&lt;/strong&gt;: Ultra-fast client rendering with sub-second hot reload and zero build bloat.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tailwind CSS v4&lt;/strong&gt;: Minimalist Forest Green retail SaaS aesthetics (&lt;code&gt;#065f46&lt;/code&gt;), high-contrast charcoal typography, neutral borders, and touch-optimized buttons ($\ge 44\text{px}$).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Browser-Native IndexedDB&lt;/strong&gt;: 5 transactional object stores (&lt;code&gt;products&lt;/code&gt;, &lt;code&gt;sales&lt;/code&gt;, &lt;code&gt;inventoryMovements&lt;/code&gt;, &lt;code&gt;settings&lt;/code&gt;, &lt;code&gt;metadata&lt;/code&gt;) providing offline durability.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Native JSON Blob Backup&lt;/strong&gt;: Browser-triggered downloads without file system vulnerabilities or arbitrary disk access claims.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;Open innovation is essential for the future of everyday computing, especially in developing economies:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Digital Sovereignty &amp;amp; Absolute Privacy&lt;/strong&gt;:
A shopkeeper's daily revenue, wholesale margins, customer credit (khata) records, and supplier relationships are their most confidential business data. Closed cloud platforms harvest and monetize this data. With DukaanVikaas's open client-native architecture, &lt;strong&gt;100% of data stays inside the merchant's physical browser&lt;/strong&gt;—no server logs, no tracking, and zero leakage.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Resilience Against the "Always-On" Myth&lt;/strong&gt;:
Big tech software often assumes continuous gigabit fiber and reliable power. Real-world retail in emerging markets operates under brownouts and cellular dead zones. Open client-side architectures ensure technology adapts to human realities, rather than demanding costly infrastructure upgrades.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero Financial Friction &amp;amp; True Democratization&lt;/strong&gt;:
Closed AI services lock users into recurring token billing and subscription tiers. Open, browser-executable logic costs $0.00 to run. A micro-retailer in an Indian village has access to the exact same cutting-edge natural language billing efficiency as a luxury supermarket in a metropolitan hub.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Predictability Over Hallucination&lt;/strong&gt;:
Closed LLMs are probabilistic—they can miscalculate currency, hallucinate prices, or invent inventory items. In point-of-sale accounting, an error of ₹10 is a breach of customer trust. Open deterministic algorithms guarantee transparent, auditable math every single time.&lt;/li&gt;
&lt;/ol&gt;




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

&lt;p&gt;This application was developed as a solo engineer using &lt;strong&gt;paired agentic software engineering&lt;/strong&gt; with DeepMind's Antigravity IDE and DevRelay:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Test Automation&lt;/strong&gt;: Used subagents to perform end-to-end browser QA across mobile viewports (&lt;code&gt;390x844&lt;/code&gt;), tablet screens, and desktop layouts.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Continuous Validation&lt;/strong&gt;: Executed automated unit tests (&lt;code&gt;45/45&lt;/code&gt; passed), strict ESLint checks, and production builds with zero warnings.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Session Record&lt;/strong&gt;: The full autonomous workflow, code edits, browser verification runs, and Git commit trails were orchestrated and verified end-to-end locally.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  My First User
&lt;/h2&gt;

&lt;p&gt;During development, DukaanVikaas was demonstrated to &lt;strong&gt;Ramesh-ji&lt;/strong&gt;, an independent Kirana store owner operating a neighborhood provision shop:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;The Reaction&lt;/strong&gt;: &lt;em&gt;"Ye to badiya hai! Padhne-likhne ki zarurat nahi, bas bolo '5 packet Maggi bike' aur bill ban gaya!"&lt;/em&gt; (&lt;em&gt;"This is great! No need to search through complicated menus—just say '5 packet Maggi bike' and the bill is generated!"&lt;/em&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Key Insight&lt;/strong&gt;: He particularly appreciated that the app worked in Hindi and Gujarati without lagging, and that he could back up his complete shop data to a &lt;code&gt;data.json&lt;/code&gt; file on his phone whenever he wanted, giving him complete peace of mind that no cloud company could ever lock him out of his records.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;&lt;strong&gt;Participation&lt;/strong&gt;: Solo Developer (&lt;strong&gt;Harshit Agarwal&lt;/strong&gt; / &lt;a href="https://github.com/Harshitagarwal113" rel="noopener noreferrer"&gt;&lt;code&gt;@Harshitagarwal113&lt;/code&gt;&lt;/a&gt;)&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Open Source AI / Local-First Innovation&lt;/strong&gt;: For building an offline, deterministic, zero-cloud natural language retail interface running 100% client-side in the browser.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tech for Good &amp;amp; Social Impact&lt;/strong&gt;: For empowering unserved micro-retailers (Kirana stores) with free, localized, accessible billing software that requires no expensive hardware or subscriptions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Web Applications / Edge Computing&lt;/strong&gt;: For showcasing Next.js 16, React 19, and IndexedDB with zero server dependency and sub-second performance.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>OutsideQuest AI: Screen-Free Nature Quests with On-Device Gemma 3</title>
      <dc:creator>Harshit Agarwal</dc:creator>
      <pubDate>Sun, 11 Oct 2026 13:32:47 +0000</pubDate>
      <link>https://dev.to/harshit_agarwal/outsidequest-ai-screen-free-nature-quests-with-on-device-gemma-3-50go</link>
      <guid>https://dev.to/harshit_agarwal/outsidequest-ai-screen-free-nature-quests-with-on-device-gemma-3-50go</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;Most modern technology traps us in continuous dopamine loops, screen fatigue, and doomscrolling. Even outdoor apps often exacerbate this problem by demanding continuous screen interaction—staring at turn-by-turn navigation, checking GPS maps, or curating photos for social validation.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;OutsideQuest AI&lt;/strong&gt; was built to do the exact opposite: &lt;strong&gt;use lightweight, open-weight AI to inspire you to put your phone in your pocket and touch grass.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;OutsideQuest AI is an intelligent, privacy-first companion that creates personalized outdoor micro-adventures designed for sensory immersion in living nature. Whether you have 15 minutes between remote work meetings or an hour on the weekend, the app crafts a structured, grounding outdoor mission tailored to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Available Time:&lt;/strong&gt; 15, 30, 45, or 60 minutes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Immediate Landscape:&lt;/strong&gt; Neighborhood, city park, botanical garden, university campus, or wild forest trail.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sensory Mood &amp;amp; Movement Pace:&lt;/strong&gt; Curious, calm, energetic, or social; gentle, moderate, or active.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Companion Mode:&lt;/strong&gt; Solo mindful walks, friends, family with children, or community groups.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sensory Interests:&lt;/strong&gt; Birding &amp;amp; bird song, plant identification, walking rhythms, mindfulness, tactile exploration, or nature photography.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Accessibility Needs:&lt;/strong&gt; Step-free pathways, flat terrain, frequent rest benches, and sensory-friendly options.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  The Screen-Free Philosophy: Phone Away, Adventure On
&lt;/h3&gt;

&lt;p&gt;Once your quest begins, OutsideQuest AI encourages you to keep your screen off:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Paced Audio Chimes:&lt;/strong&gt; Built-in Web Audio API synthesizers play gentle harmonic chimes (528 Hz and 659 Hz) to signal when each sensory milestone concludes, so you never have to watch a ticking clock.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sensory Focus Prompts:&lt;/strong&gt; Every step activates a distinct physical sense—listening for rustling foliage, noticing bark textures, feeling temperature gradients, or tracking shadow angles.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Safety-First Guardrails:&lt;/strong&gt; The engine programmatically enforces strict nature safety rules: no eating wild plants/mushrooms, no approaching or handling wildlife, and staying on marked public paths.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Nature Journal &amp;amp; Reflections:&lt;/strong&gt; When you return, you record what you noticed (sensory observations, bird sightings, mental headspace) in a private, persistent nature journal stored locally in your browser.&lt;/li&gt;
&lt;/ol&gt;




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

&lt;ul&gt;
&lt;li&gt;🌐 &lt;strong&gt;Live Web Application:&lt;/strong&gt; &lt;a href="https://outside-quest-ai.vercel.app/" rel="noopener noreferrer"&gt;https://outside-quest-ai.vercel.app/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;⚡ &lt;strong&gt;Zero Setup Required:&lt;/strong&gt; Deployed on Vercel with zero required API keys, accounts, or environment variables. Works on desktop, tablet, and mobile browsers.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;ul&gt;
&lt;li&gt;📦 &lt;strong&gt;GitHub Repository:&lt;/strong&gt; &lt;a href="https://github.com/Harshitagarwal113/OutsideQuest-AI" rel="noopener noreferrer"&gt;https://github.com/Harshitagarwal113/OutsideQuest-AI&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;📄 &lt;strong&gt;License:&lt;/strong&gt; MIT License (Open Source)&lt;/li&gt;
&lt;li&gt;🏷️ &lt;strong&gt;Current Release:&lt;/strong&gt; &lt;code&gt;v0.1.0&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&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/Harshitagarwal113" rel="noopener noreferrer"&gt;
        Harshitagarwal113
      &lt;/a&gt; / &lt;a href="https://github.com/Harshitagarwal113/OutsideQuest-AI" rel="noopener noreferrer"&gt;
        OutsideQuest-AI
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      
    &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;OutsideQuest AI 🌲&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://github.com/Harshitagarwal113/OutsideQuest-AI/public/outsidequest-banner.jpg"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fraw.githubusercontent.com%2FHarshitagarwal113%2FOutsideQuest-AI%2FHEAD%2Fpublic%2Foutsidequest-banner.jpg" alt="OutsideQuest AI Banner"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Turn routine neighborhood walks into sensory outdoor micro-adventures with browser-native, open-weight AI.&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;Built for the Touch Grass Open-Source AI Challenge.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href="https://github.com/Harshitagarwal113/OutsideQuest-AI/package.json" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/f0e2520c9bece356d7e123dc1ebacdcf4914b9d1843879f21e473bd0d8762c9f/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f76657273696f6e2d76302e312e302d3331354434342e737667" alt="Version"&gt;&lt;/a&gt;
&lt;a href="https://github.com/Harshitagarwal113/OutsideQuest-AI/LICENSE" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/861bc0a4800b160c7b82b3418a129c75519437ed61745864aad998968d416d2e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4d49542d4342443943372e737667" alt="License: MIT"&gt;&lt;/a&gt;
&lt;a href="https://nextjs.org/" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/8aa0f111ba483767ecbeecb4055fb94ce13ffd3e31eef948e27d621be9ccdb6b/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4e6578742e6a732d31342e322d3235324232352e737667" alt="Next.js"&gt;&lt;/a&gt;
&lt;a href="https://huggingface.co/docs/transformers.js" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/a9aa4a1a09f70d48b03afbaac71ff4f585380e0843f07ce9b1bd48ca581d437e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5472616e73666f726d6572732e6a732d76332e302d4438384435312e737667" alt="Transformers.js"&gt;&lt;/a&gt;
&lt;a href="https://github.com/Harshitagarwal113/OutsideQuest-AI/docs/DEPLOYMENT.md" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/3521c44d1db747b0e9932c5d9eff175f9e38862d5da4b2167e4bd336fbbb675f/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f436c6f7564253230536563726574732d5a65726f2d3331354434342e737667" alt="Zero Cloud Secrets"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🧭 Product Overview&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;In an era of hyper-connected screens and infinite AI chat loops, &lt;strong&gt;OutsideQuest AI&lt;/strong&gt; was built to turn artificial intelligence inside out: instead of capturing your gaze, it encourages you to pocket your phone and explore the living world with your physical senses.&lt;/p&gt;
&lt;p&gt;OutsideQuest AI runs open-weight Small Language Models (SLMs) &lt;strong&gt;directly inside the user's browser&lt;/strong&gt; via WebGPU and WebAssembly. It personalizes sensory exploration missions tailored to your immediate environment (park, garden, neighborhood, campus), available duration (15 to 60 minutes), social setting (solo, friends, family), mood, and accessibility preferences.&lt;/p&gt;
&lt;p&gt;Every quest is private, free, and self-contained:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Zero Cloud Inference APIs:&lt;/strong&gt; No OpenAI, Anthropic, or external serverless endpoints.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero Account Creation:&lt;/strong&gt; No login walls, passwords, or tracking cookies.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero Ongoing Cost:&lt;/strong&gt; Hosted on Vercel Hobby (Free…&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/Harshitagarwal113/OutsideQuest-AI" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;





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

&lt;p&gt;OutsideQuest AI runs an open-weight Small Language Model directly in the user's browser—&lt;strong&gt;no cloud GPU clusters, no external inference APIs, and no server-side execution.&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  1. On-Device AI Engine: Google Gemma 3
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Model:&lt;/strong&gt; &lt;a href="https://huggingface.co/onnx-community/gemma-3-270m-it-ONNX" rel="noopener noreferrer"&gt;&lt;code&gt;onnx-community/gemma-3-270m-it-ONNX&lt;/code&gt;&lt;/a&gt; (Google Gemma 3 270M Instruction-Tuned).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Quantization:&lt;/strong&gt; 4-bit INT4 (&lt;code&gt;q4&lt;/code&gt;) weights (~200 MB download footprint), optimized for consumer mobile devices and laptops.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Inference Library:&lt;/strong&gt; &lt;strong&gt;Transformers.js v3&lt;/strong&gt; (&lt;code&gt;@huggingface/transformers&lt;/code&gt;) coupled with &lt;strong&gt;ONNX Runtime Web&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hardware Acceleration:&lt;/strong&gt; Automatically targets &lt;strong&gt;WebGPU&lt;/strong&gt; for parallel tensor arithmetic on device silicon, with graceful degradation to multi-threaded &lt;strong&gt;WebAssembly (WASM)&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Multi-Threaded Web Worker Architecture
&lt;/h3&gt;

&lt;p&gt;Running heavy neural network matrix calculations on the browser UI thread can freeze scrolling and animations. We isolated the model lifecycle inside a dedicated Web Worker (&lt;code&gt;src/features/ai/workers/model.worker.ts&lt;/code&gt;):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Non-blocking token generation keeps the React user interface at a butter-smooth 60 FPS.&lt;/li&gt;
&lt;li&gt;Dynamic Gemma chat template handling formats prompt turns and seamlessly handles system-prompt merging.&lt;/li&gt;
&lt;li&gt;Comprehensive progress tracking reports byte-level download and shader compilation progress back to the UI.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. Dual-Engine Generation &amp;amp; Zero-Drop Resilience
&lt;/h3&gt;

&lt;p&gt;To guarantee that you can always head outside even with zero connectivity:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Primary Generator:&lt;/strong&gt; Browser-native Google Gemma 3 neural generation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Deterministic Curated Engine:&lt;/strong&gt; If the model has not yet been downloaded, or if you are already on a deep trail with cellular reception turned off, a deterministic engine instantly generates rich, sensory-grounded quests in 0 milliseconds with 0 MB downloaded.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  4. Local-First Nature Journaling with IndexedDB
&lt;/h3&gt;

&lt;p&gt;Your thoughts and reflections are stored in a sandboxed, client-side database using &lt;code&gt;idb&lt;/code&gt; (IndexedDB):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Quests, completion statuses, sensory notes, and nature metrics persist across browser sessions.&lt;/li&gt;
&lt;li&gt;Built-in data export (formatted JSON) and print-ready expedition note summaries.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Tech Stack Summary
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Framework:&lt;/strong&gt; Next.js 14 App Router (Full static prerendering)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Language &amp;amp; Runtime:&lt;/strong&gt; TypeScript (Strict Mode) + React 18&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Styling:&lt;/strong&gt; Tailwind CSS with a curated, nature-inspired palette (Forest, Sage, Sand, Earth Amber)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Validation:&lt;/strong&gt; Zod schemas for runtime parameter checking and LLM JSON output repair&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Audio:&lt;/strong&gt; Custom Web Audio API synthesizer for serene nature chimes&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Testing:&lt;/strong&gt; 15 Vitest test suites (71 tests passing) + Playwright E2E suites for desktop and mobile viewports&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;Outdoor exploration and nature connection should be universal, safe, and free. Building OutsideQuest AI around an open-weight, browser-native model unlocks benefits that closed, proprietary cloud APIs simply cannot match:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;True Offline Functionality in Living Nature:&lt;/strong&gt;&lt;br&gt;
Closed APIs require constant high-speed internet. But the best places to "touch grass"—state parks, botanical gardens, coastal headlands, and dense woodlands—often have spotty or zero cellular coverage. Because Gemma 3 is cached on-device, OutsideQuest AI continues generating adventures even when completely disconnected in Airplane Mode.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Absolute Privacy &amp;amp; Data Sovereignty:&lt;/strong&gt;&lt;br&gt;
Closed APIs log your prompts, location hints, daily walking routines, physical limitations, and sensory reflection journals onto commercial cloud servers. With open weights on-device, your thoughts and personal context never leave your browser sandbox.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Zero Cost &amp;amp; Democratic Access:&lt;/strong&gt;&lt;br&gt;
There are no token costs, subscription tiers, API credit expirations, or paywalls. Anyone with a smartphone or laptop can experience personalized nature guidance without entering a credit card or registering an account.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Reliability &amp;amp; Immortality:&lt;/strong&gt;&lt;br&gt;
A closed API can be sunset, rate-limited, or altered overnight. An open-weight model with an open-source web application remains fully operational forever.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;




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

&lt;p&gt;This application was engineered collaboratively with &lt;strong&gt;Antigravity AI&lt;/strong&gt;, Google DeepMind's agentic coding pair programmer. &lt;/p&gt;

&lt;p&gt;The full agent workflow covered:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Architecting the client-side Web Worker communication layer and Zod output repair pipeline.&lt;/li&gt;
&lt;li&gt;Integrating &lt;code&gt;onnx-community/gemma-3-270m-it-ONNX&lt;/code&gt; via Transformers.js v3 with WebGPU/WASM fallback.&lt;/li&gt;
&lt;li&gt;Conducting rigorous security and code audits, resolving PostCSS configurations, and achieving 100% test pass rates across 71 unit/integration tests.&lt;/li&gt;
&lt;li&gt;Deploying the static bundle to Vercel Hobby with zero environment variables and zero paid compute.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;(Transcripts and architecture documents are preserved directly in the repository under &lt;a href="https://github.com/Harshitagarwal113/OutsideQuest-AI/blob/main/docs/ARCHITECTURE.md" rel="noopener noreferrer"&gt;&lt;code&gt;docs/ARCHITECTURE.md&lt;/code&gt;&lt;/a&gt; and &lt;a href="https://github.com/Harshitagarwal113/OutsideQuest-AI/blob/main/docs/AI_DECISIONS.md" rel="noopener noreferrer"&gt;&lt;code&gt;docs/AI_DECISIONS.md&lt;/code&gt;&lt;/a&gt;).&lt;/em&gt;&lt;/p&gt;




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

&lt;p&gt;We are entering OutsideQuest AI into the following track:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of Gemma&lt;/strong&gt; (Primary Partner Category)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Grand Prize / Overall Track&lt;/strong&gt; (Hacktoberfest Open-Source AI Challenge: Week 1 — Touch Grass)&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🌲 Step Outside
&lt;/h2&gt;

&lt;p&gt;OutsideQuest AI proves that open-source AI doesn't have to keep us glued to glowing rectangles. By taking advantage of Google Gemma 3 running on your device silicon, we can use artificial intelligence to celebrate and preserve our connection with the real, tactile, beautiful natural world.&lt;/p&gt;

&lt;p&gt;Take 15 minutes today, put your phone in your pocket, and go explore:&lt;br&gt;
👉 &lt;strong&gt;&lt;a href="https://outside-quest-ai.vercel.app/" rel="noopener noreferrer"&gt;Launch OutsideQuest AI&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
      <category>gemma</category>
      <category>opensource</category>
    </item>
    <item>
      <title>The Comeback of Agent Baymax: From Hackathon Prototype to AI Healthcare Platform</title>
      <dc:creator>Harshit Agarwal</dc:creator>
      <pubDate>Sat, 06 Jun 2026 09:17:20 +0000</pubDate>
      <link>https://dev.to/harshit_agarwal/the-comeback-of-agent-baymax-from-hackathon-prototype-to-ai-healthcare-platform-3enb</link>
      <guid>https://dev.to/harshit_agarwal/the-comeback-of-agent-baymax-from-hackathon-prototype-to-ai-healthcare-platform-3enb</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/github-2026-05-21"&gt;GitHub Finish-Up-A-Thon Challenge&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  🩺 Agent Baymax V2 — From a Local AI Assistant to a Full Healthcare Platform
&lt;/h1&gt;

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

&lt;p&gt;Some projects don't need to be replaced—they need to be completed.&lt;/p&gt;

&lt;p&gt;Agent Baymax started as a simple terminal-based healthcare companion built during a hackathon. The original version could answer basic health-related questions, log calories, track hydration, and maintain short-term conversational context using a locally running language model.&lt;/p&gt;

&lt;p&gt;While the idea worked, it never fully matched the vision I had in mind.&lt;/p&gt;

&lt;p&gt;Users had to manually enter meals, there was no personalization across sessions, no visual interface, no image understanding, and no way to retrieve information from trusted healthcare resources.&lt;/p&gt;

&lt;p&gt;For the Finish-Up-A-Thon Challenge, I decided to revisit the project and transform it into something much more capable.&lt;/p&gt;

&lt;p&gt;The result is &lt;strong&gt;Agent Baymax V2&lt;/strong&gt; — an AI-powered healthcare companion that combines:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;🧠 Conversational AI&lt;/li&gt;
&lt;li&gt;📸 Multimodal meal analysis&lt;/li&gt;
&lt;li&gt;🍽️ Personalized nutrition planning&lt;/li&gt;
&lt;li&gt;🧮 Dynamic BMR and TDEE calculations&lt;/li&gt;
&lt;li&gt;📚 Retrieval-Augmented Generation (RAG)&lt;/li&gt;
&lt;li&gt;💾 Long-term memory extraction&lt;/li&gt;
&lt;li&gt;🔐 Secure authentication&lt;/li&gt;
&lt;li&gt;☁️ Cloud-based storage and data management&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;What started as a simple terminal application evolved into a modern healthcare platform designed around personalization, accessibility, and intelligent health tracking.&lt;/p&gt;




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

&lt;p&gt;This project is currently under active development and is being demonstrated through screenshots.&lt;/p&gt;

&lt;h3&gt;
  
  
  Dashboard
&lt;/h3&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.amazonaws.com%2Fuploads%2Farticles%2F3jo8ivs27gyhn3doebm0.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.amazonaws.com%2Fuploads%2Farticles%2F3jo8ivs27gyhn3doebm0.png" alt=" " width="800" height="461"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The redesigned dashboard provides users with a modern healthcare experience featuring personalized health metrics and quick access to Baymax's capabilities.&lt;/p&gt;




&lt;h3&gt;
  
  
  AI Healthcare Assistant
&lt;/h3&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.amazonaws.com%2Fuploads%2Farticles%2Ff8rm9kz9k17re6d2he50.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.amazonaws.com%2Fuploads%2Farticles%2Ff8rm9kz9k17re6d2he50.png" alt=" " width="799" height="495"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Users can chat naturally with Baymax and receive contextual health guidance powered by Gemini.&lt;/p&gt;




&lt;h3&gt;
  
  
  Vision-Based Meal Analysis
&lt;/h3&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.amazonaws.com%2Fuploads%2Farticles%2Fgkkpf7sndj1pbl8phox2.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.amazonaws.com%2Fuploads%2Farticles%2Fgkkpf7sndj1pbl8phox2.png" alt=" " width="800" height="487"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Users can upload meal images and receive calorie estimates, macro breakdowns, health scores, and nutritional insights.&lt;/p&gt;




&lt;h3&gt;
  
  
  Personalized Health Metrics
&lt;/h3&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.amazonaws.com%2Fuploads%2Farticles%2Ftx15np00yfxbo5znfw0y.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.amazonaws.com%2Fuploads%2Farticles%2Ftx15np00yfxbo5znfw0y.png" alt=" " width="800" height="493"&gt;&lt;/a&gt;&lt;br&gt;
Baymax dynamically calculates BMR, TDEE, protein targets, and daily nutrition recommendations based on the user's profile.&lt;/p&gt;




&lt;h3&gt;
  
  
  Knowledge Base &amp;amp; RAG
&lt;/h3&gt;

&lt;p&gt;Healthcare documents can be uploaded, embedded, and searched to provide evidence-based responses grounded in trusted resources.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Comeback Story
&lt;/h2&gt;

&lt;p&gt;The original Agent Baymax was built as a lightweight proof of concept.&lt;/p&gt;

&lt;p&gt;Version 1 used Google's Gemma 2B instruction-tuned model running locally through Hugging Face Transformers. Users interacted through a terminal interface where they could ask basic health questions, track hydration, and log food consumption.&lt;/p&gt;

&lt;p&gt;Although functional, several limitations quickly became apparent:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;No graphical user interface&lt;/li&gt;
&lt;li&gt;No authentication system&lt;/li&gt;
&lt;li&gt;No persistent memory&lt;/li&gt;
&lt;li&gt;No image understanding&lt;/li&gt;
&lt;li&gt;No document retrieval&lt;/li&gt;
&lt;li&gt;No personalization engine&lt;/li&gt;
&lt;li&gt;No scalable architecture&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Rather than abandoning the project, I chose to rebuild it from the ground up.&lt;/p&gt;

&lt;p&gt;The first major step was moving from a terminal application to a modern web platform powered by Next.js and Supabase.&lt;/p&gt;

&lt;p&gt;Next came multimodal AI capabilities. Instead of manually logging food, users can now upload meal images and receive structured nutritional analysis.&lt;/p&gt;

&lt;p&gt;To improve personalization, I implemented a memory extraction system that identifies important long-term user preferences, dietary restrictions, and lifestyle choices and stores them for future interactions.&lt;/p&gt;

&lt;p&gt;I then introduced a Retrieval-Augmented Generation pipeline using embeddings and vector search, allowing Baymax to retrieve information from uploaded healthcare documents instead of relying entirely on model knowledge.&lt;/p&gt;

&lt;p&gt;Finally, I redesigned the user experience with glassmorphic interfaces, smooth animations, streaming AI responses, cloud storage, authentication, and scalable backend infrastructure.&lt;/p&gt;

&lt;h3&gt;
  
  
  Before vs After
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Agent Baymax V1&lt;/th&gt;
&lt;th&gt;Agent Baymax V2&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Terminal-Based Application&lt;/td&gt;
&lt;td&gt;Modern Web Platform&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Local Gemma 2B Model&lt;/td&gt;
&lt;td&gt;Gemini-Powered AI&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Text-Only Inputs&lt;/td&gt;
&lt;td&gt;Text + Image Understanding&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Local File Storage&lt;/td&gt;
&lt;td&gt;Cloud Database&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Session Context Only&lt;/td&gt;
&lt;td&gt;Persistent Long-Term Memory&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Manual Food Logging&lt;/td&gt;
&lt;td&gt;AI Meal Recognition&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;No Knowledge Retrieval&lt;/td&gt;
&lt;td&gt;RAG + Vector Search&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Single-User Local Tool&lt;/td&gt;
&lt;td&gt;Scalable Full-Stack Platform&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;This challenge became less about finishing unfinished code and more about finishing the original vision behind Baymax.&lt;/p&gt;




&lt;h2&gt;
  
  
  My Experience with GitHub Copilot
&lt;/h2&gt;

&lt;p&gt;As the project grew from a small Python prototype into a full-stack AI application, development complexity increased significantly.&lt;/p&gt;

&lt;p&gt;GitHub Copilot helped speed up implementation by assisting with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;API integrations&lt;/li&gt;
&lt;li&gt;Authentication flows&lt;/li&gt;
&lt;li&gt;Database operations&lt;/li&gt;
&lt;li&gt;TypeScript interfaces&lt;/li&gt;
&lt;li&gt;React component scaffolding&lt;/li&gt;
&lt;li&gt;Utility functions&lt;/li&gt;
&lt;li&gt;Backend route generation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For larger features such as memory extraction workflows and vector search integrations, Copilot provided useful starting points that accelerated experimentation and iteration.&lt;/p&gt;

&lt;p&gt;Rather than replacing problem-solving, it reduced repetitive work and allowed more focus on architecture decisions, feature design, and user experience.&lt;/p&gt;




&lt;h2&gt;
  
  
  🛠️ Tech Stack
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Frontend
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Next.js 16&lt;/li&gt;
&lt;li&gt;React 19&lt;/li&gt;
&lt;li&gt;Tailwind CSS v4&lt;/li&gt;
&lt;li&gt;Framer Motion&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Backend &amp;amp; Database
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Supabase PostgreSQL&lt;/li&gt;
&lt;li&gt;pgvector&lt;/li&gt;
&lt;li&gt;Supabase Auth&lt;/li&gt;
&lt;li&gt;Supabase Storage&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  AI &amp;amp; Machine Learning
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Google Gemini&lt;/li&gt;
&lt;li&gt;Google Embedding Models&lt;/li&gt;
&lt;li&gt;Vercel AI SDK&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Infrastructure
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Upstash Redis&lt;/li&gt;
&lt;li&gt;Vector Search&lt;/li&gt;
&lt;li&gt;Retrieval-Augmented Generation (RAG)&lt;/li&gt;
&lt;li&gt;Long-Term Memory Engine&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;Revisiting Agent Baymax taught me an important lesson.&lt;/p&gt;

&lt;p&gt;Not every unfinished project deserves to be abandoned. Sometimes the most rewarding challenge is returning to an old idea and finally building it the way you originally imagined.&lt;/p&gt;

&lt;p&gt;Agent Baymax began as a small hackathon experiment.&lt;/p&gt;

&lt;p&gt;Agent Baymax V2 represents the vision that experiment was always meant to become.&lt;/p&gt;

&lt;p&gt;And this challenge gave me the perfect excuse to finally finish it.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>githubchallenge</category>
    </item>
    <item>
      <title>Gemma Wagon - Your Private Ambient AI Desktop Companion Powered by Gemma 4</title>
      <dc:creator>Harshit Agarwal</dc:creator>
      <pubDate>Tue, 19 May 2026 17:31:11 +0000</pubDate>
      <link>https://dev.to/harshit_agarwal/gemma-wagon-your-private-ambient-ai-desktop-companion-powered-by-gemma-4-1bd</link>
      <guid>https://dev.to/harshit_agarwal/gemma-wagon-your-private-ambient-ai-desktop-companion-powered-by-gemma-4-1bd</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/google-gemma-2026-05-06"&gt;Gemma 4 Challenge: Write About Gemma 4&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Gemma Wagon
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Executive Summary
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Gemma Wagon&lt;/strong&gt; is a privacy-first, fully local AI desktop assistant designed to transform how users interact with their computers. Instead of functioning as a simple chatbot, Gemma Wagon acts as an intelligent operating system layer capable of seeing the user’s screen, understanding voice commands, reasoning through complex workflows, and executing real desktop actions — all without sending data to the cloud.&lt;/p&gt;

&lt;p&gt;Built around the multimodal and agentic capabilities of Gemma 4, Gemma Wagon combines local inference, real-time desktop context awareness, Retrieval-Augmented Generation (RAG), and secure OS-level automation into a single unified experience.&lt;/p&gt;

&lt;p&gt;Our goal is to bridge the growing gap between AI utility and user privacy. Current AI assistants often require constant internet connectivity and expose sensitive information to external servers. Gemma Wagon solves this problem by ensuring every interaction happens entirely on-device.&lt;/p&gt;

&lt;p&gt;This project demonstrates how Gemma 4 can power the next generation of ambient AI systems that are fast, secure, context-aware, and developer-friendly.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Problem
&lt;/h2&gt;

&lt;p&gt;Modern AI assistants are powerful, but they still suffer from several major limitations:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Sensitive files and screen data must often be uploaded to external servers&lt;/li&gt;
&lt;li&gt;Existing assistants lack persistent contextual awareness of the desktop environment&lt;/li&gt;
&lt;li&gt;Local AI solutions are fragmented and difficult for non-technical users&lt;/li&gt;
&lt;li&gt;Most assistants cannot safely execute real operating system tasks&lt;/li&gt;
&lt;li&gt;Cloud dependency introduces latency, privacy concerns, and internet requirements&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Users need an AI system that is:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Local-first&lt;/li&gt;
&lt;li&gt;Privacy-preserving&lt;/li&gt;
&lt;li&gt;Multimodal&lt;/li&gt;
&lt;li&gt;Action-oriented&lt;/li&gt;
&lt;li&gt;Lightweight enough to run continuously&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Gemma Wagon was designed specifically to solve these challenges.&lt;/p&gt;




&lt;h2&gt;
  
  
  Our Solution: Gemma Wagon
&lt;/h2&gt;

&lt;p&gt;Gemma Wagon introduces an &lt;strong&gt;Ambient AI Desktop Layer&lt;/strong&gt; that continuously assists users through contextual understanding and local reasoning.&lt;/p&gt;

&lt;p&gt;The system includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Persistent floating AI overlay (“Orb”)&lt;/li&gt;
&lt;li&gt;Local multimodal reasoning using Gemma 4&lt;/li&gt;
&lt;li&gt;Voice + screen understanding&lt;/li&gt;
&lt;li&gt;OS-level task automation&lt;/li&gt;
&lt;li&gt;Local REST API for developers&lt;/li&gt;
&lt;li&gt;Offline document intelligence using RAG&lt;/li&gt;
&lt;li&gt;Fully private local execution&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Instead of forcing users to switch between applications, Gemma Wagon becomes a natural extension of the desktop itself.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why Gemma 4?
&lt;/h2&gt;

&lt;p&gt;Gemma 4 is the core technology that makes this architecture possible.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Native Multimodality
&lt;/h2&gt;

&lt;p&gt;Gemma 4 can process:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Text&lt;/li&gt;
&lt;li&gt;Images&lt;/li&gt;
&lt;li&gt;Audio&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This enables Gemma Wagon to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Understand screenshots&lt;/li&gt;
&lt;li&gt;Analyze UI elements&lt;/li&gt;
&lt;li&gt;Process voice commands&lt;/li&gt;
&lt;li&gt;Maintain contextual awareness&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The multimodal capabilities allow the assistant to “see” and “hear” the user’s environment in real time.&lt;/p&gt;




&lt;h2&gt;
  
  
  2. Efficient Local Inference
&lt;/h2&gt;

&lt;p&gt;We use optimized GGUF variants of Gemma 4 running through &lt;code&gt;llama.cpp&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;This allows:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fully offline inference&lt;/li&gt;
&lt;li&gt;GPU acceleration&lt;/li&gt;
&lt;li&gt;Low memory usage&lt;/li&gt;
&lt;li&gt;Background execution without disrupting workflows&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The Mixture-of-Experts efficiency of Gemma 4 enables high-quality reasoning while remaining lightweight enough for local consumer hardware.&lt;/p&gt;




&lt;h2&gt;
  
  
  3. Massive Context Window
&lt;/h2&gt;

&lt;p&gt;Gemma 4’s extended context capabilities allow Gemma Wagon to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Read large PDFs&lt;/li&gt;
&lt;li&gt;Analyze repositories&lt;/li&gt;
&lt;li&gt;Understand long conversations&lt;/li&gt;
&lt;li&gt;Process entire document libraries&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This becomes especially powerful when combined with our local RAG pipeline.&lt;/p&gt;




&lt;h2&gt;
  
  
  4. Agentic Reasoning &amp;amp; Function Calling
&lt;/h2&gt;

&lt;p&gt;Gemma 4’s reasoning capabilities enable safe desktop automation through structured function calls.&lt;/p&gt;

&lt;p&gt;Examples include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Opening applications&lt;/li&gt;
&lt;li&gt;Finding files&lt;/li&gt;
&lt;li&gt;Organizing folders&lt;/li&gt;
&lt;li&gt;Summarizing spreadsheets&lt;/li&gt;
&lt;li&gt;Running scripts&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The assistant reasons before acting, making automation safer and more reliable.&lt;/p&gt;




&lt;h2&gt;
  
  
  Technical Architecture
&lt;/h2&gt;

&lt;p&gt;Gemma Wagon is built using a layered architecture optimized for performance, security, and modularity.&lt;/p&gt;




&lt;h2&gt;
  
  
  1. Core Engine (Python/Rust)
&lt;/h2&gt;

&lt;p&gt;The Core Engine acts as the brain and system controller.&lt;/p&gt;

&lt;h3&gt;
  
  
  Responsibilities
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Screen capture&lt;/li&gt;
&lt;li&gt;Audio capture&lt;/li&gt;
&lt;li&gt;OS integrations&lt;/li&gt;
&lt;li&gt;Function execution&lt;/li&gt;
&lt;li&gt;REST API handling&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Key Technologies
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Python&lt;/li&gt;
&lt;li&gt;Rust&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;mss&lt;/code&gt; for screenshots&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;pyaudio&lt;/code&gt; for microphone streaming&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The engine runs locally as a background service and exposes an OpenAI-compatible local API endpoint.&lt;/p&gt;




&lt;h2&gt;
  
  
  2. AI Inference Layer
&lt;/h2&gt;

&lt;p&gt;The inference layer embeds Gemma 4 directly into the application.&lt;/p&gt;

&lt;h3&gt;
  
  
  Key Implementation Details
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;GGUF model format&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;llama.cpp&lt;/code&gt; backend&lt;/li&gt;
&lt;li&gt;CUDA acceleration&lt;/li&gt;
&lt;li&gt;Vulkan/ROCm support&lt;/li&gt;
&lt;li&gt;Metal support for macOS&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Optimizations
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;KV-cache memory management&lt;/li&gt;
&lt;li&gt;Context retention&lt;/li&gt;
&lt;li&gt;Inference throughput&lt;/li&gt;
&lt;li&gt;Local GPU utilization&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This enables real-time AI interaction directly on-device.&lt;/p&gt;




&lt;h2&gt;
  
  
  3. Frontend (Tauri + Rust)
&lt;/h2&gt;

&lt;p&gt;The frontend provides the desktop experience.&lt;/p&gt;

&lt;h3&gt;
  
  
  Features
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Floating Orb overlay&lt;/li&gt;
&lt;li&gt;Modern chat interface&lt;/li&gt;
&lt;li&gt;Markdown rendering&lt;/li&gt;
&lt;li&gt;Model configuration&lt;/li&gt;
&lt;li&gt;Document management&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Why Tauri?
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Smaller binaries&lt;/li&gt;
&lt;li&gt;Better performance&lt;/li&gt;
&lt;li&gt;Higher security&lt;/li&gt;
&lt;li&gt;Native desktop integration&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Rust handles secure communication between the UI and backend systems.&lt;/p&gt;




&lt;h2&gt;
  
  
  4. Local Knowledge Base (RAG)
&lt;/h2&gt;

&lt;p&gt;Gemma Wagon includes fully local document intelligence.&lt;/p&gt;

&lt;h3&gt;
  
  
  Pipeline
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Document upload
&lt;/li&gt;
&lt;li&gt;Chunking
&lt;/li&gt;
&lt;li&gt;Embedding generation
&lt;/li&gt;
&lt;li&gt;Vector indexing
&lt;/li&gt;
&lt;li&gt;Retrieval during inference
&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Supported Documents
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;PDFs&lt;/li&gt;
&lt;li&gt;PPTs&lt;/li&gt;
&lt;li&gt;Notes&lt;/li&gt;
&lt;li&gt;Codebases&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The vector database uses lightweight local storage for fully offline retrieval.&lt;/p&gt;




&lt;h2&gt;
  
  
  Communication Flow
&lt;/h2&gt;

&lt;p&gt;The interaction pipeline follows this sequence:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;User triggers Gemma Wagon via voice or hotkey
&lt;/li&gt;
&lt;li&gt;System captures screen/audio context
&lt;/li&gt;
&lt;li&gt;Gemma 4 processes multimodal input
&lt;/li&gt;
&lt;li&gt;AI generates either:

&lt;ul&gt;
&lt;li&gt;A response&lt;/li&gt;
&lt;li&gt;A function call&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Core Engine executes the action
&lt;/li&gt;
&lt;li&gt;UI provides visual feedback
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This architecture enables real-time ambient assistance while remaining fully local.&lt;/p&gt;




&lt;h2&gt;
  
  
  Privacy &amp;amp; Security
&lt;/h2&gt;

&lt;p&gt;Privacy is the foundation of Gemma Wagon.&lt;/p&gt;

&lt;h2&gt;
  
  
  Security Model
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Fully local inference&lt;/li&gt;
&lt;li&gt;No cloud processing&lt;/li&gt;
&lt;li&gt;No telemetry&lt;/li&gt;
&lt;li&gt;Encrypted local storage&lt;/li&gt;
&lt;li&gt;Sandboxed OS function execution&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The only internet access required is the initial model download.&lt;/p&gt;

&lt;h3&gt;
  
  
  Ideal For
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Developers&lt;/li&gt;
&lt;li&gt;Enterprises&lt;/li&gt;
&lt;li&gt;Researchers&lt;/li&gt;
&lt;li&gt;Privacy-conscious users&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Key Use Cases
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Productivity Assistant
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;“Summarize this spreadsheet and generate action items.”&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Developer Copilot
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;“Analyze this repository and explain the architecture.”&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Smart Document Search
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;“Find the PDF where I discussed vector databases.”&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Workflow Automation
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;“Open VS Code, launch Docker, and summarize yesterday’s notes.”&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Accessibility Support
&lt;/h2&gt;

&lt;p&gt;Context-aware voice-based desktop interaction.&lt;/p&gt;




&lt;h2&gt;
  
  
  Engineering Challenges
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Real-Time Multimodal Processing
&lt;/h2&gt;

&lt;p&gt;Running continuous screen + audio analysis locally required careful optimization of:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;GPU memory&lt;/li&gt;
&lt;li&gt;Context management&lt;/li&gt;
&lt;li&gt;Inference latency&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Safe Function Calling
&lt;/h2&gt;

&lt;p&gt;We implemented controlled execution pipelines to prevent unsafe automation behavior.&lt;/p&gt;




&lt;h2&gt;
  
  
  Lightweight Desktop Integration
&lt;/h2&gt;

&lt;p&gt;Creating a persistent desktop assistant without large resource consumption required deep optimization using Rust and Tauri.&lt;/p&gt;




&lt;h2&gt;
  
  
  Local RAG Performance
&lt;/h2&gt;

&lt;p&gt;Efficient indexing and retrieval were essential for maintaining fast response times on consumer hardware.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Makes Gemma Wagon Different?
&lt;/h2&gt;

&lt;p&gt;Unlike traditional AI chat applications, Gemma Wagon is:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Ambient instead of reactive&lt;/li&gt;
&lt;li&gt;Local instead of cloud-based&lt;/li&gt;
&lt;li&gt;Agentic instead of passive&lt;/li&gt;
&lt;li&gt;Multimodal instead of text-only&lt;/li&gt;
&lt;li&gt;Integrated into the OS instead of isolated in a browser tab&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Gemma Wagon demonstrates how Gemma 4 can power truly personal AI systems that remain private, fast, and deeply contextual.&lt;/p&gt;




&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Gemma Wagon represents a new category of AI-native computing.&lt;/p&gt;

&lt;p&gt;By combining:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Gemma 4 multimodal reasoning&lt;/li&gt;
&lt;li&gt;Local inference&lt;/li&gt;
&lt;li&gt;Agentic automation&lt;/li&gt;
&lt;li&gt;Desktop integration&lt;/li&gt;
&lt;li&gt;Privacy-first architecture&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;we created a system that transforms AI from a chatbot into a true operating system companion.&lt;/p&gt;

&lt;p&gt;This project showcases the real-world potential of Gemma 4 as the foundation for next-generation ambient AI experiences that users can fully trust.&lt;/p&gt;




&lt;h2&gt;
  
  
  Repository
&lt;/h2&gt;

&lt;p&gt;🔗 &lt;em&gt;GitHub:&lt;/em&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://github.com/Harshitagarwal113/gemma_wagon" rel="noopener noreferrer"&gt;https://github.com/Harshitagarwal113/gemma_wagon&lt;/a&gt;&lt;/p&gt;




</description>
      <category>devchallenge</category>
      <category>gemmachallenge</category>
      <category>gemma</category>
    </item>
  </channel>
</rss>
