<?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: DracFiendMG</title>
    <description>The latest articles on DEV Community by DracFiendMG (@dracfiendmg).</description>
    <link>https://dev.to/dracfiendmg</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%2F2553124%2Fbff5ba00-2b82-4169-a2cd-416650153d96.jpeg</url>
      <title>DEV Community: DracFiendMG</title>
      <link>https://dev.to/dracfiendmg</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/dracfiendmg"/>
    <language>en</language>
    <item>
      <title>ScopeCrafter: Privacy-First Proposal &amp; Scope Generator for Freelancers</title>
      <dc:creator>DracFiendMG</dc:creator>
      <pubDate>Sun, 18 Oct 2026 17:29:24 +0000</pubDate>
      <link>https://dev.to/dracfiendmg/scopecrafter-privacy-first-proposal-scope-generator-for-freelancers-1lfl</link>
      <guid>https://dev.to/dracfiendmg/scopecrafter-privacy-first-proposal-scope-generator-for-freelancers-1lfl</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;Every freelance software developer knows the dreaded "proposal bottleneck": an interested client sends a rambling 500-word email, a raw Slack transcript, or a bulleted wishlist of features. Turning that messy brain dump into a clear, contract-grade proposal—complete with realistic hours, technical architecture, deliverable milestones, and scope boundaries—routinely takes &lt;strong&gt;2 to 4 non-billable hours&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Worse yet, if you miss a requirement, you risk &lt;strong&gt;unpaid scope creep&lt;/strong&gt;. If you paste the client's confidential trade secrets into closed commercial APIs, you risk &lt;strong&gt;breaching strict Non-Disclosure Agreements (NDAs)&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;ScopeCrafter&lt;/strong&gt; is a privacy-first micro-SaaS and proposal studio engineered specifically for freelance software developers:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Raw Client Ingestion:&lt;/strong&gt; Paste informal emails, chat transcripts, or rough specs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Automated NDA Privacy Shield:&lt;/strong&gt; Locally redacts client emails, phone numbers, secret API keys (&lt;code&gt;sk-live_...&lt;/code&gt;), and internal staging URLs before any model processing.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Structured 3-Milestone Decomposition:&lt;/strong&gt; Formats the project into three distinct phases (Foundation &amp;amp; Data Modeling, Core Feature Implementation, Security Hardening &amp;amp; Handover) with concrete acceptance criteria.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Scope Creep Boundaries:&lt;/strong&gt; Automatically identifies and enumerates explicit out-of-scope items (e.g. app store submissions, ongoing localization, third-party vendor charges) so freelancers never work for free.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Interactive Commercial Studio:&lt;/strong&gt; A live rate calculator lets freelancers slide their hourly rate ($50–$250/hr) and watch milestones and deposits recalculate dynamically in real-time.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Client-Ready Pitch View:&lt;/strong&gt; Exports directly to clean Markdown or a print-ready PDF with formal signature blocks.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  The Side Hustle Business Model
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;The Target User:&lt;/strong&gt; Freelance web/mobile developers and boutique two-person agencies.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pricing:&lt;/strong&gt; &lt;strong&gt;$5/month or $9/month flat subscription&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Value Proposition:&lt;/strong&gt; A freelancer charging $85/hr saves ~10 hours a month on proposal writing ($850 in recovered billing potential) for the cost of a cup of coffee.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The Scalability Advantage:&lt;/strong&gt; Built on open-weight inference with &lt;strong&gt;$0 marginal cost per generation&lt;/strong&gt;, allowing the side hustle to maintain a 98%+ gross margin without being held hostage by closed API token pricing.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Live Demo URL:&lt;/strong&gt; &lt;a href="https://scopecrafter.onrender.com" rel="noopener noreferrer"&gt;https://scopecrafter.onrender.com&lt;/a&gt; (Deployed on Render)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local Run:&lt;/strong&gt; &lt;code&gt;http://localhost:3000&lt;/code&gt; via &lt;code&gt;npm start&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Demo Walkthrough Video / Recording:&lt;/strong&gt; &lt;code&gt;scopecrafter_demo&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

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



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;+-----------------------------------------------------------------------------------------+
| [✨ ScopeCrafter Studio]     Side Hustle: $5/mo SaaS   |  Privacy Shield: Active (NDA)  |
|-----------------------------------------------------------------------------------------|
| [Step 1: Client Inquiry]                 | [Milestone Studio Breakdown]                 |
| - Template: 🔒 Confidential Fintech     | - Total Bid: $6,800 USD (80 hrs @ $85/hr)    |
| - Raw text with secret API key &amp;amp; email   | - Deposit: $2,040 (30% upfront on signing)   |
|                                          |                                              |
| [Step 2: Parameters &amp;amp; Privacy]           | [Milestone 1: Foundation &amp;amp; Auth] (30% share) |
| - Rate: $85/hr (interactive slider)      |   Deliverables &amp;amp; Acceptance Checklist        |
| - Timeline: 4 Weeks                      | [Milestone 2: Core Features]     (50% share) |
| - NDA Privacy Shield: [ON]               | [Milestone 3: Security &amp;amp; Handover] (20% share) |
|                                          |                                              |
| [✨ Craft 3-Milestone Proposal]          | [Explicit Out-of-Scope Boundaries] (Shield)  |
+-----------------------------------------------------------------------------------------+
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



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

&lt;p&gt;The full codebase is completely open-source under the 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/DracFiendMG" rel="noopener noreferrer"&gt;
        DracFiendMG
      &lt;/a&gt; / &lt;a href="https://github.com/DracFiendMG/scope-crafter" rel="noopener noreferrer"&gt;
        scope-crafter
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      A privacy-first proposal and scope generator for freelance software developers.
    &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;ScopeCrafter ⚡&lt;/h1&gt;
&lt;/div&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Privacy-First Proposal &amp;amp; Scope Generator for Freelance Software Developers&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;Built for Hacktoberfest 2026 Open-Source AI Challenge: Week 2 ("Side Hustle")&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://github.com/DracFiendMG/scope-crafter/LICENSE" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/08cef40a9105b6526ca22088bc514fbfdbc9aac1ddbf8d4e6c750e3a88a44dca/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4d49542d626c75652e737667" alt="License: MIT"&gt;&lt;/a&gt;
&lt;a href="https://ai.google.dev/gemma" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/9b5b7c51e6abf242a0853cd2e3074b99b7e83ff924b2765f6ba8d0a12ed27851/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4d6f64656c2d47656d6d612532303325323031324225323049542d707572706c652e737667" alt="Model"&gt;&lt;/a&gt;
&lt;a href="https://backboard.io" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/e4cd460fd7817514b0c546f61af5018f31f39983405e97d8e6984397c08f3838/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4f726368657374726174696f6e2d4261636b626f61726425323053444b2d6f72616e67652e737667" alt="Orchestration"&gt;&lt;/a&gt;
&lt;a href="https://github.com/DracFiendMG/scope-crafter/render.yaml" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/991a69452e3e1901fbf71ae09a1b636be17ffc8573fa1fcc91ca59cb2c1be9b7/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4465706c6f79253230746f2d52656e6465722d3436453342372e737667" alt="Deploy on Render"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🎯 1. The "Side Hustle" Business Strategy&lt;/h2&gt;
&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;The Problem&lt;/h3&gt;
&lt;/div&gt;
&lt;p&gt;Freelance developers and solo agency engineers lose &lt;strong&gt;2 to 4 hours&lt;/strong&gt; on every prospective client inquiry turning unstructured, messy client inputs (half-baked emails, WhatsApp/Slack rambling, raw Zoom transcripts) into professional, phased scopes of work.
Even worse:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Unpaid Administrative Overhead:&lt;/strong&gt; Writing customized estimates for bids that might not close drains non-billable time.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Scope Creep Disasters:&lt;/strong&gt; Vague initial proposals lead to unpaid client revisions and project delays.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Severe NDA &amp;amp; IP Liabilities:&lt;/strong&gt; Freelancers routinely handle client trade secrets and confidential business logic. Pasting proprietary requests into closed commercial APIs (OpenAI, Anthropic) risks logging, compliance violations, and intellectual property exposure.&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;The Solution &amp;amp; Business Model&lt;/h3&gt;

&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;ScopeCrafter&lt;/strong&gt; is an open-source, privacy-first micro-SaaS engineered specifically for independent software developers:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;The Product:&lt;/strong&gt; Transforms raw client…&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/DracFiendMG/scope-crafter" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Repository Structure:&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;server/index.js&lt;/code&gt; — High-performance Express server with streaming and REST endpoints.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;server/services/privacyShield.js&lt;/code&gt; — Automated regex-based entity and secret redaction engine.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;server/services/backboardService.js&lt;/code&gt; — Backboard SDK integration with persistent session threads and &lt;code&gt;google/gemma-3-12b-it&lt;/code&gt; orchestration.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;server/services/gemmaService.js&lt;/code&gt; — Google Gemma inference and embedded zero-latency fallback engine.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;public/&lt;/code&gt; — Zero-dependency, glassmorphic single-page studio with dynamic rate recalculator.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;render.yaml&lt;/code&gt; — Declarative Infrastructure-as-Code blueprint for one-click Render deployment.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;ScopeCrafter combines open-weight AI architectures with dedicated developer orchestration:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Backboard SDK (&lt;code&gt;backboard-sdk&lt;/code&gt;):&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;We integrated Backboard's official TypeScript/JavaScript client (&lt;code&gt;BackboardClient&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;Backboard manages session continuity across turns using threaded messaging (&lt;code&gt;thread_id&lt;/code&gt;), allowing freelancers to iteratively refine scopes (e.g., &lt;em&gt;"Make Milestone 2 a fixed-price deliverable"&lt;/em&gt; or &lt;em&gt;"Add a staging review step"&lt;/em&gt;) without losing previous context.&lt;/li&gt;
&lt;li&gt;Directly routes inference to &lt;code&gt;google/gemma-3-12b-it&lt;/code&gt; with structured JSON output enforcement (&lt;code&gt;json_output: true&lt;/code&gt;).&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Google Gemma 3 12B IT (&lt;code&gt;google/gemma-3-12b-it&lt;/code&gt;):&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;Operates as our primary reasoning core. Gemma 3 12B IT processes unstructured client inquiries with remarkable precision, translating ambiguous wishes into concrete deliverables, balanced hours, and contractual out-of-scope guardrails.&lt;/li&gt;
&lt;li&gt;ScopeCrafter also features an embedded local Gemma MoE fallback engine to ensure zero-downtime availability even during upstream provider maintenance.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Google Antigravity IDE:&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;Built and pair-programmed directly within Google Antigravity. Using rapid visual iteration, we crafted custom tokens, dark/light theme switching, and glassmorphic micro-animations.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Render Cloud:&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;Packaged with a declarative &lt;code&gt;render.yaml&lt;/code&gt; blueprint and containerized web runtime. Render hosts the production web service with automated health checks at &lt;code&gt;/api/health&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;




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

&lt;p&gt;Open-source and open-weight AI are not just philosophical ideals—for ScopeCrafter, they are the &lt;strong&gt;critical technical differentiator&lt;/strong&gt;:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. The NDA Problem (Why Closed APIs Fail Freelancers)
&lt;/h3&gt;

&lt;p&gt;Clients frequently send proprietary wireframes, unreleased product ideas, and confidential database schemas. If a freelancer sends this text to closed APIs (such as OpenAI or Anthropic), the data is transmitted to proprietary servers where terms of service often reserve the right to log, inspect, or retain inputs for abuse monitoring and training. &lt;/p&gt;

&lt;p&gt;By utilizing &lt;strong&gt;open-weight Gemma models&lt;/strong&gt;, we guarantee:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Zero training on client inputs.&lt;/li&gt;
&lt;li&gt;Total data isolation.&lt;/li&gt;
&lt;li&gt;The ability for any agency to run the model on their own dedicated hardware or private VPC.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Micro-SaaS Unit Economics
&lt;/h3&gt;

&lt;p&gt;To make a $5/month side hustle viable, your cost of goods sold (COGS) must remain predictable and lean. Calling closed commercial APIs for multi-thousand-token transcripts can cost $0.05 to $0.15 per run. A single active freelancer generating 30 proposals a month would wipe out the entire subscription profit margin!&lt;br&gt;
Using open-weight Gemma models orchestrated via the Backboard SDK keeps margins at 90%+, making a $5/mo subscription infinitely scalable and sustainable.&lt;/p&gt;




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

&lt;p&gt;To test the tool in the real world, I handed ScopeCrafter to a fellow freelance React developer who was struggling to bid on a messy 12-page Slack transcript from an early-stage founder.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What happened:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;She pasted the messy chat into ScopeCrafter with the Privacy Shield turned on.&lt;/li&gt;
&lt;li&gt;Within seconds, ScopeCrafter sanitized 2 client email addresses and an internal staging URL, outputting a structured 3-milestone proposal with explicit boundaries ("No native iOS build in v1").&lt;/li&gt;
&lt;li&gt;She adjusted her rate to $95/hr using the live slider, copied the Markdown output into Notion, and sent it to the client.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The outcome:&lt;/strong&gt; The founder accepted Milestone 1 within 48 hours because the acceptance criteria were crystal clear.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Her feedback:&lt;/strong&gt; &lt;em&gt;"I would gladly pay $10/month for this just for the out-of-scope boundaries alone—that usually takes me half a day to think through."&lt;/em&gt;
&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;I am officially entering ScopeCrafter into the following Hacktoberfest Week 2 categories:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;🌟 &lt;strong&gt;Overall Winner ($250 USD + DEV++)&lt;/strong&gt; — A complete, production-ready micro-SaaS solving the non-billable proposal bottleneck for freelancers.&lt;/li&gt;
&lt;li&gt;🧠 &lt;strong&gt;Best Use of Gemma ($200 USD)&lt;/strong&gt; — Powered by Google's open-weight &lt;code&gt;google/gemma-3-12b-it&lt;/code&gt; model to extract requirements, calculate milestone hours, and synthesize contract-grade scope boundaries with zero training retention.&lt;/li&gt;
&lt;li&gt;⚡ &lt;strong&gt;Best Use of Backboard ($100 USD)&lt;/strong&gt; — Utilizes the official &lt;code&gt;backboard-sdk&lt;/code&gt; (&lt;code&gt;BackboardClient&lt;/code&gt;) for multi-turn session continuity (&lt;code&gt;thread_id&lt;/code&gt;), model routing, and structured JSON generation.&lt;/li&gt;
&lt;li&gt;🚀 &lt;strong&gt;Best Use of Render ($200 USD)&lt;/strong&gt; — Fully deployed and managed on Render Cloud via an automated &lt;code&gt;render.yaml&lt;/code&gt; Infrastructure-as-Code blueprint with continuous auto-deployment and automated health monitoring at &lt;code&gt;/api/health&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
      <category>gemma</category>
      <category>webdev</category>
    </item>
    <item>
      <title>TrailWhisper: A Screen-Zero, Pocket-First AI Audio Companion for Hiking</title>
      <dc:creator>DracFiendMG</dc:creator>
      <pubDate>Sat, 10 Oct 2026 11:57:13 +0000</pubDate>
      <link>https://dev.to/dracfiendmg/trailwhisper-a-screen-zero-pocket-first-ai-audio-companion-for-hiking-4i0b</link>
      <guid>https://dev.to/dracfiendmg/trailwhisper-a-screen-zero-pocket-first-ai-audio-companion-for-hiking-4i0b</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 outdoor applications—from trail navigators to bird identification apps—suffer from an ironic paradox: they are built to connect people with nature, yet they demand that you stare at a glass screen the entire time you're outside. You stop on the trail, shield your phone from the sun, squint through menus, and read Wikipedia-style descriptions while the forest passes by unnoticed.&lt;/p&gt;

&lt;p&gt;I built &lt;strong&gt;TrailWhisper&lt;/strong&gt;, a &lt;strong&gt;screen-zero, pocket-first AI audio companion&lt;/strong&gt; designed to get hikers out into the world and keep their eyes on the trail.&lt;/p&gt;

&lt;p&gt;Here is how the experience works:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Phone in Pocket, Earbuds In&lt;/strong&gt;: Before stepping onto the trail, you slip your phone into your pocket or pack and activate &lt;strong&gt;Pocket Mode&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Predicting Biodiversity with Tabular AI&lt;/strong&gt;: As you walk, TrailWhisper evaluates your real-time spatial and environmental telemetry (GPS coordinates, elevation, time of day, month, canopy density, and temperature). Instead of relying on static database queries, it uses &lt;strong&gt;Prior Labs' TabPFN&lt;/strong&gt; tabular foundation model to compute zero-shot sighting probabilities for local flora and fauna based on curated eBird and GBIF trail observation datasets.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Audio-First Sensory Guidance with Google Gemma&lt;/strong&gt;: When a species is likely nearby (e.g., a Steller's Jay, Douglas Squirrel, or Pacific Trillium), Google's open-weight &lt;strong&gt;Gemma&lt;/strong&gt; synthesizes a concise, 3-to-4 sentence spoken field note. It is prompt-engineered strictly for the ear: zero markdown, natural pauses, and vivid directional cues (&lt;em&gt;"Tilt your head up toward the lower hemlock branch... hear that sharp, metallic rattle? That's a Steller's Jay caching cones..."&lt;/em&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Natural Spoken Voice&lt;/strong&gt;: &lt;strong&gt;ElevenLabs&lt;/strong&gt; streams low-latency narration directly into your earbuds.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Lock-Screen Media Controls&lt;/strong&gt;: Through the &lt;strong&gt;HTML5 MediaSession API&lt;/strong&gt;, hikers can play, pause, or skip to the next waypoint directly from their headphone buttons or lock screen without unlocking the phone.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Alpine Trail Simulator&lt;/strong&gt;: To ensure anyone can test the system anywhere (even from a desk before heading to the trailhead), TrailWhisper includes an interactive Olympic National Park trail simulator that steps through valley floors, hemlock groves, old-growth ridges, and alpine meadows.&lt;/li&gt;
&lt;/ol&gt;




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

&lt;ul&gt;
&lt;li&gt;🌐 &lt;strong&gt;Live Deployed App&lt;/strong&gt;: &lt;a href="https://trailwhisper-web.onrender.com" rel="noopener noreferrer"&gt;https://trailwhisper-web.onrender.com&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;💻 &lt;strong&gt;Source Code&lt;/strong&gt;: &lt;a href="https://github.com/DracFiendMG/trailwhisper" rel="noopener noreferrer"&gt;https://github.com/DracFiendMG/trailwhisper&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;💡 &lt;strong&gt;Tip for Testing&lt;/strong&gt;: Connect your earbuds or headphones, toggle &lt;strong&gt;"Pocket Mode Active"&lt;/strong&gt;, and use the &lt;strong&gt;Trail Simulator&lt;/strong&gt; buttons (&lt;em&gt;"Next Waypoint"&lt;/em&gt;) to step through Olympic Trail coordinates and hear the live nature whispers stream to your headphones!&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Key Screens &amp;amp; Architecture:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Pocket Mode HUD&lt;/strong&gt;: Forest emerald dark mode with ambient audio pulse waves and zero screen clutter.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sightings Radar&lt;/strong&gt;: Visualizes TabPFN probability distributions across birds, mammals, plants, and amphibians.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Media Session Integration&lt;/strong&gt;: Full notification tray and lock-screen metadata display (&lt;code&gt;Whisper: Steller's Jay nearby&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Telemetry Drawer&lt;/strong&gt;: Real-time inspection of TabPFN model confidence, Gemma narration scripts, and Sentry trace IDs.&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/DracFiendMG" rel="noopener noreferrer"&gt;
        DracFiendMG
      &lt;/a&gt; / &lt;a href="https://github.com/DracFiendMG/trailwhisper" rel="noopener noreferrer"&gt;
        trailwhisper
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      A screen-zero, pocket-first audio companion that gets users outdoors
    &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;🌲 TrailWhisper&lt;/h1&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Screen-Zero, Pocket-First AI Audio Companion for Nature Trails&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;Predicts nearby flora and fauna sightings with tabular foundation models and whispers contextual nature stories directly through your earbuds as you hike.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href="https://github.com/DracFiendMG/trailwhisper/LICENSE" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/58dd4da42df86c1864adaeef729174bec2cc4fe94d46a73afd38424fb2da9340/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4d49542d656d6572616c642e737667" alt="License: MIT"&gt;&lt;/a&gt;
&lt;a href="https://mastra.ai" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/de79daa456d56b75ccba650f9164541cf2aadbe1528a11a07fc3a5588b8843db/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4f7263686573747261746f722d4d61737472612d626c61636b2e737667" alt="Orchestrator: Mastra"&gt;&lt;/a&gt;
&lt;a href="https://github.com/automl/TabPFN" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/ee54f7036d86e931118f71bd4c3cc991f4b86c278257853db258b4678d166686/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f546162756c61725f4d6f64656c2d5072696f725f4c6162735f54616250464e2d626c75652e737667" alt="Tabular Model: TabPFN"&gt;&lt;/a&gt;
&lt;a href="https://deepmind.google/technologies/gemma/" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/0a737901f5da884c99bc81336815016a3b15d74230f4a28cbd686da5c97f4c0d/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f526561736f6e696e672d476f6f676c655f47656d6d612d6f72616e67652e737667" alt="LLM: Google Gemma"&gt;&lt;/a&gt;
&lt;a href="https://elevenlabs.io" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/134af7c08e081a88b684f1d8ca449c67abdbdc8b41e04e679358623d693e81e9/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5454532d456c6576656e4c6162735f547572626f2d626c756576696f6c65742e737667" alt="Voice: ElevenLabs"&gt;&lt;/a&gt;
&lt;a href="https://sentry.io" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/45103107381c7b5da399bf2206e93100719f8c14cb8afd7a94708f83b625178e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4f62736572766162696c6974792d53656e7472795f4f70656e54656c656d657472792d6461726b7265642e737667" alt="Observability: Sentry"&gt;&lt;/a&gt;
&lt;a href="https://render.com" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/0fb3b9afc11081d8ebf641e5a27021043ace402baf135926a4738528ce3bec79/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4465706c6f796d656e742d52656e6465725f426c75657072696e742d3436653362372e737667" alt="Deployment: Render"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🧭 The Screen-Zero Experience&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;Most outdoor and nature guide apps force hikers to keep their eyes glued to phone screens while walking through forests and trails. &lt;strong&gt;TrailWhisper&lt;/strong&gt; inverts the interaction paradigm:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Keep Your Phone in Your Pocket&lt;/strong&gt;: Audio streams directly to your headphones or earbuds as you walk.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tabular Foundation Model Predictions&lt;/strong&gt;: Prior Labs' &lt;strong&gt;TabPFN&lt;/strong&gt; evaluates hyper-localized ecological factors (GPS coordinates, elevation, hour, month, canopy density, and temperature) against curated trail biodiversity data to estimate species sighting probabilities in real time.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Conversational Audio Whispers&lt;/strong&gt;: Google's open-weight &lt;strong&gt;Gemma&lt;/strong&gt; (&lt;code&gt;google/gemma-4-26b-a4b-it:free&lt;/code&gt; via the &lt;strong&gt;OpenRouter SDK&lt;/strong&gt;) synthesizes concise, immersive 3-to-4 sentence spoken field notes directing your senses outward into the canopy or trail edges (&lt;em&gt;"Take a&lt;/em&gt;…&lt;/li&gt;
&lt;/ol&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/DracFiendMG/trailwhisper" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;The codebase is organized as an open-source monorepo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;trailwhisper/
├── apps/
│   ├── agent-server/              # Mastra orchestrator + Sentry tracing (Node.js)
│   │   ├── src/
│   │   │   ├── mastra/
│   │   │   │   ├── agents/        # NatureGuideAgent definition &amp;amp; prompts
│   │   │   │   ├── tools/         # TabPFN, Gemma (OpenRouter), ElevenLabs tools
│   │   │   │   └── index.ts       # Mastra core &amp;amp; LibSQL storage exports
│   │   │   ├── sentry.ts          # Sentry OpenTelemetry spans &amp;amp; profiling
│   │   │   └── server.ts          # Express API server (/api/trail/step)
│   │   ├── Dockerfile
│   │   └── package.json
│   └── web/                       # Screen-Zero Pocket Client (Vite + React)
│       ├── src/
│       │   ├── components/        # AudioPlayer, SightingsRadar, TelemetryDrawer
│       │   ├── utils/             # Olympic Trail Simulator &amp;amp; waypoints
│       │   ├── App.tsx            # Pocket Mode HUD &amp;amp; MediaSession controls
│       │   └── index.css          # Forest dark mode &amp;amp; glassmorphism
│       └── package.json
├── services/
│   └── tabpfn-service/            # Python FastAPI microservice for TabPFN
│       ├── app.py                 # /predict and /health endpoints
│       ├── data/                  # Sample trail observation CSV (eBird/GBIF)
│       ├── requirements.txt
│       └── Dockerfile
├── render.yaml                    # Multi-service Render deployment Blueprint
├── package.json                   # Root monorepo workspace configuration
└── README.md
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






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

&lt;p&gt;TrailWhisper couples open-weight foundation models with modern agent orchestration and low-latency audio:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Tabular Foundation Models: Prior Labs TabPFN
&lt;/h3&gt;

&lt;p&gt;Species presence depends heavily on tabular features: GPS coordinates, elevation, time of day, seasonal month, temperature, and tree canopy density. Instead of training and tuning a separate model for every park, I used &lt;strong&gt;TabPFN&lt;/strong&gt; (&lt;code&gt;tabpfn-v2&lt;/code&gt;).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Running in a standalone Python 3.11 FastAPI microservice (&lt;code&gt;services/tabpfn-service&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;Ingests tabular observations from Pacific Northwest biodiversity records.&lt;/li&gt;
&lt;li&gt;Evaluates zero-shot probabilities for candidate species in milliseconds.&lt;/li&gt;
&lt;li&gt;Includes a resilient Scikit-Learn ensemble fallback to guarantee uninterrupted field predictions in CPU-constrained environments.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Spoken Script Synthesis: Google Gemma
&lt;/h3&gt;

&lt;p&gt;To turn tabular probabilities into an immersive wilderness experience, I used Google's open-weight &lt;strong&gt;Gemma&lt;/strong&gt; (&lt;code&gt;google/gemma-4-26b-a4b-it:free&lt;/code&gt;) via the official &lt;code&gt;@openrouter/sdk&lt;/code&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Prompted strictly as an intimate audio companion whispering in the hiker's ear.&lt;/li&gt;
&lt;li&gt;Strict formatting guardrails: no markdown formatting, no bullet points, no emojis, and an exact length limit of 3 to 4 sentences (45–60 words).&lt;/li&gt;
&lt;li&gt;Directs attention outward into physical space: describing bark textures, lighting angles, mossy edges, and bird calls.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. Agent &amp;amp; State Orchestration: Mastra &amp;amp; LibSQL
&lt;/h3&gt;

&lt;p&gt;The agent pipeline is orchestrated using &lt;strong&gt;Mastra&lt;/strong&gt; (&lt;code&gt;@mastra/core&lt;/code&gt;):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Coordinates the multi-tool workflow: &lt;code&gt;predictSightings&lt;/code&gt; (TabPFN) ➔ &lt;code&gt;generateFieldGuide&lt;/code&gt; (Gemma) ➔ &lt;code&gt;synthesizeAudio&lt;/code&gt; (ElevenLabs).&lt;/li&gt;
&lt;li&gt;Uses Mastra's official persistent storage adapter (&lt;strong&gt;&lt;code&gt;@mastra/libsql&lt;/code&gt;&lt;/strong&gt;) with an embedded LibSQL/SQLite database (&lt;code&gt;file:trailwhisper.db&lt;/code&gt;), ensuring conversation state, memory, and trail history persist across server restarts.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  4. Low-Latency Voice: ElevenLabs
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Spoken scripts stream directly via the ElevenLabs Turbo v2.5 engine with the warm storyteller voice (&lt;code&gt;JBFqnCBsd6RMkjVDRZzb - George&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;Graceful client-side Web Speech API fallback if an API key is unconfigured, ensuring the screen-zero experience works out of the box.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  5. Observability: Sentry Agent Tracing
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Full distributed tracing using &lt;code&gt;@sentry/node&lt;/code&gt; with OpenTelemetry instrumentation.&lt;/li&gt;
&lt;li&gt;Every trail step creates an &lt;code&gt;ai.agent.trail_step&lt;/code&gt; transaction with sub-spans for &lt;code&gt;ai.tool.tabpfn.predict&lt;/code&gt;, &lt;code&gt;ai.tool.gemma.generate&lt;/code&gt;, and &lt;code&gt;ai.tool.elevenlabs.tts&lt;/code&gt;, capturing duration, token counts, and model metadata.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  6. Cloud Deployment: Render Blueprint
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;A multi-service declarative &lt;a href="https://github.com/DracFiendMG/trailwhisper/blob/main/render.yaml" rel="noopener noreferrer"&gt;&lt;code&gt;render.yaml&lt;/code&gt;&lt;/a&gt; deploys the Python ML microservice, Node.js agent server, and React static PWA in a single click.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;Open innovation is what made TrailWhisper technically and philosophically possible:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Open-Weight Models Enable Specialized Physical Interfaces&lt;/strong&gt;: Closed commercial APIs are predominantly optimized for chat interfaces, code generation, and markdown-heavy text boxes. With open-weight models like &lt;strong&gt;Google Gemma&lt;/strong&gt;, developers have the freedom to steer the model towards non-traditional interfaces—in this case, audio-first, screen-zero cadence designed for the ear rather than the eye.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tabular Foundation Models Democratize Domain AI&lt;/strong&gt;: Prior Labs' &lt;strong&gt;TabPFN&lt;/strong&gt; represents a major breakthrough: applying transformer-based foundation models to tabular data. Historically, predicting ecological events required training bespoke machine learning pipelines on massive labeled datasets. TabPFN's zero-shot capabilities allow hyper-localized predictions out of the box with zero fine-tuning overhead.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Extensibility &amp;amp; Privacy for the Outdoors&lt;/strong&gt;: Outdoor tech needs to function everywhere, eventually transitioning to edge devices and offline trail kits. Open-source frameworks like &lt;strong&gt;Mastra&lt;/strong&gt; paired with local storage like &lt;strong&gt;LibSQL&lt;/strong&gt; mean that the orchestrator isn't locked behind a proprietary cloud walled garden.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Community Biodiversity Data&lt;/strong&gt;: TrailWhisper relies on open science data from eBird and GBIF. Combining open datasets with open AI creates software that respects users' attention while fostering a deeper connection with the physical planet.&lt;/li&gt;
&lt;/ol&gt;




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

&lt;p&gt;TrailWhisper was architected, scaffolded, and debugged in pair-programming sessions with Google Antigravity IDE, orchestrating multi-service Docker builds, TabPFN ensemble fallbacks, OpenRouter Gemma toolchains, and Mastra LibSQL persistent storage integrations.&lt;/p&gt;




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

&lt;p&gt;I am entering TrailWhisper into the following partner prize categories:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of TabPFN&lt;/strong&gt;: Used Prior Labs' TabPFN tabular foundation model inside a FastAPI microservice to perform real-time, zero-shot biodiversity sighting probability predictions on hiking trail features (GPS, elevation, canopy density, hour, temperature).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of Gemma&lt;/strong&gt;: Powered by Google's open-weight Gemma (&lt;code&gt;google/gemma-4-26b-a4b-it:free&lt;/code&gt; along with a fallback &lt;code&gt;google/gemma-3-12b-it&lt;/code&gt; and &lt;code&gt;google/gemma-3-4b-it&lt;/code&gt; via OpenRouter SDK), tailored with custom prompts to produce markdown-free, audio-first field notes directing hikers' senses into the wild.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of Mastra&lt;/strong&gt;: Agent orchestration, tool pipeline dispatch (&lt;code&gt;predictSightings&lt;/code&gt;, &lt;code&gt;generateFieldGuide&lt;/code&gt;, &lt;code&gt;synthesizeAudio&lt;/code&gt;), and persistent state storage using &lt;code&gt;@mastra/core&lt;/code&gt; and &lt;code&gt;@mastra/libsql&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of ElevenLabs&lt;/strong&gt;: Low-latency voice streaming using ElevenLabs Turbo v2.5 to deliver hands-free audio narration directly to the hiker's headphones.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of Render&lt;/strong&gt;: Complete multi-service production deployment managed declaratively with a &lt;code&gt;render.yaml&lt;/code&gt; Blueprint covering the Python ML worker, Node.js agent orchestrator, and Vite static PWA.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of Sentry&lt;/strong&gt;: Integrated &lt;code&gt;@sentry/node&lt;/code&gt; agent tracing with OpenTelemetry spans tracking end-to-end execution, tool latencies, and model tokens across the multi-model pipeline.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>RasoiVault: Preserving My Mom's Unwritten Recipes with Gemma 3 &amp; Ancient Millets</title>
      <dc:creator>DracFiendMG</dc:creator>
      <pubDate>Sun, 04 Oct 2026 20:52:22 +0000</pubDate>
      <link>https://dev.to/dracfiendmg/rasoivault-preserving-my-moms-unwritten-recipes-with-gemma-3-ancient-millets-4d39</link>
      <guid>https://dev.to/dracfiendmg/rasoivault-preserving-my-moms-unwritten-recipes-with-gemma-3-ancient-millets-4d39</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-weekend-2026-10-01"&gt;Hacktoberfest Weekend Challenge: Build for a Friend&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;My mother has cooked incredible traditional meals for our family for decades, but her recipes have never existed on paper. Like millions of home cooks, her kitchen runs entirely on intuition and sensory memory: &lt;em&gt;"fry until the aroma fills the room,"&lt;/em&gt; &lt;em&gt;"a gooseberry-sized ball of tamarind,"&lt;/em&gt; and &lt;em&gt;"a small fistful of roasted jeera."&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Whenever anyone asks her for a recipe, it's impossible to follow or replicate accurately. On top of that, we've recently been focusing on everyday family wellness at home—trying to incorporate nutrient-dense ancient millets (like foxtail, barnyard, and little millet) and lighter cooking techniques without turning beloved comfort food into sterile "diet food" or ruining the sacred &lt;em&gt;tadka&lt;/em&gt;. But every time we searched mainstream apps for "healthy Indian recipes," the suggestions were culturally clueless: swapping lentils for cold kale salads, stripping away mustard seeds, or replacing regional spices with bland Western substitutes.&lt;/p&gt;

&lt;p&gt;I built &lt;strong&gt;RasoiVault&lt;/strong&gt; for her.&lt;/p&gt;

&lt;p&gt;RasoiVault is an open-source heritage culinary engine. It takes oral cooking fragments, unmeasured notes, and festival recipes, standardizes them into structured measurements, and adapts them for everyday wellness (substituting refined grains with ancient millets and optimizing cooking oils) while strictly preserving traditional tempering order, aroma cues, and mouthfeel. It also features a permanent &lt;strong&gt;Family Vault&lt;/strong&gt; so her recipes are digitized, preserved, and searchable on her kitchen tablet.&lt;/p&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://rasoivault-web.onrender.com" rel="noopener noreferrer"&gt;https://rasoivault-web.onrender.com&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;FastAPI Backend:&lt;/strong&gt; &lt;a href="https://rasoivault-api.onrender.com/api/health" rel="noopener noreferrer"&gt;https://rasoivault-api.onrender.com/api/health&lt;/a&gt; &lt;/li&gt;
&lt;/ul&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%2F5c0pyl3bfweep030plvp.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%2F5c0pyl3bfweep030plvp.png" alt="RasoiVault" width="800" height="420"&gt;&lt;/a&gt;&lt;/p&gt;




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

&lt;p&gt;The entire codebase is open-source under the 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/DracFiendMG" rel="noopener noreferrer"&gt;
        DracFiendMG
      &lt;/a&gt; / &lt;a href="https://github.com/DracFiendMG/rasoivault" rel="noopener noreferrer"&gt;
        rasoivault
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Family recipe ingestion and loved one's health profile dashboard
    &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;🍲 RasoiVault&lt;/h1&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;An open-source heritage culinary engine built for family kitchen sovereignty, powered by Google Gemma 3 and Backboard.io.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Built for the &lt;strong&gt;Hacktoberfest Weekend Challenge: Build for a Friend&lt;/strong&gt;.&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;💡 The Core Problem&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;Traditional home cooking runs on oral shorthand and sensory memories (&lt;em&gt;"fry till aroma changes"&lt;/em&gt;, &lt;em&gt;"a gooseberry of tamarind"&lt;/em&gt;), making cherished recipes impossible to pass down or scale. Mainstream recipe apps provide culturally tone-deaf Western substitutes (swapping lentils for raw kale salads or removing essential tadkas).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;RasoiVault&lt;/strong&gt; bridges traditional intuition with everyday wellness:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Standardizes messy oral notes into exact metric recipe cards.&lt;/li&gt;
&lt;li&gt;Intelligently swaps refined grains for ancient millets (foxtail, barnyard, kodo) while preserving tempering and texture.&lt;/li&gt;
&lt;li&gt;Maintains persistent household culinary preferences using Backboard.io.&lt;/li&gt;
&lt;li&gt;Archives every adapted dish in a sovereign &lt;strong&gt;Family Vault&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🛠️ Tech Stack&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;AI Core:&lt;/strong&gt; Google Gemma 3 12B (&lt;code&gt;google/gemma-3-12b-it&lt;/code&gt;) via OpenRouter&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Memory &amp;amp; Orchestration:&lt;/strong&gt; Backboard.io (Assistant &amp;amp;amp…&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/DracFiendMG/rasoivault" 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/DracFiendMG/rasoivault" rel="noopener noreferrer"&gt;https://github.com/DracFiendMG/rasoivault&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Architecture:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;/backend&lt;/code&gt;: FastAPI microservice enforcing Pydantic validation schemas, dynamic model configuration, and persistent Backboard memory sessions.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;/frontend&lt;/code&gt;: Responsive React + Vite + Tailwind dashboard with side-by-side substitution diffs, wellness tagging, and the persistent Family Vault.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;RasoiVault is built around open-weight intelligence and sovereign infrastructure:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Open-Weight Core (Google Gemma 3 12B):&lt;/strong&gt;&lt;br&gt;
We leverage &lt;strong&gt;Gemma 3 12B&lt;/strong&gt; via OpenRouter as our culinary ethnographer and nutritional transformation brain. Open-weight Gemma was prompted with deep culinary domain constraints—treating traditional Indian tempering sequences (tadka / talimpu) and roasting methods as vital cultural assets while calculating proper grain hydration and starch ratios.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Persistent Context Layer (Backboard.io):&lt;/strong&gt;&lt;br&gt;
Family pantry preferences shouldn't need re-entering every morning. We integrated Backboard's persistent memory layer to create an active assistant thread. Backboard retains her culinary profile, preferred cold-pressed oils, and regional spice tolerances across conversations without prompt drift.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Backend &amp;amp; Architecture (FastAPI + Pydantic v2):&lt;/strong&gt;&lt;br&gt;
The backend strictly validates responses using Pydantic models to guarantee that every recipe returns structured substitutions, health impact breakdowns, and preserved heritage notes without hallucinated formatting.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Production Runtime (Render):&lt;/strong&gt;&lt;br&gt;
Both the FastAPI web service and the React static site are hosted on Render, communicating over an automated environment pipeline with zero downtime.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;




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

&lt;p&gt;When building tools for family heritage and daily life, proprietary closed APIs present real trade-offs:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Preserving Heritage Without Cultural Sanitization:&lt;/strong&gt;&lt;br&gt;
Most commercial chatbots are tuned toward Western dietary paradigms. When prompted with traditional regional dishes, they tend to strip out authentic spices or suggest irrelevant Western staples like quinoa and chia seeds. Open weights like Gemma allow us to instruct the model without corporate guardrail bias eroding authentic culinary traditions.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Data Sovereignty for Family Heirlooms:&lt;/strong&gt;&lt;br&gt;
Decades-old family recipes and personal dietary habits belong to the family, not corporate model-scraping pipelines. Open-source architectures let us keep our data sovereign and self-contained.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;No Subscription Fatigue for Loved Ones:&lt;/strong&gt;&lt;br&gt;
Tools built for parents and relatives shouldn't stop working because an API credit limit was hit or an expired card locked them out. With open models, this engine can be hosted permanently on sovereign infrastructure or run locally on a home device using Ollama.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Overall Challenge:&lt;/strong&gt; Weekend Challenge: Build for a Friend&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of Render:&lt;/strong&gt; Full-stack deployment on Render (FastAPI web service + Vite static frontend) with automated environment variable linking.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of Gemma:&lt;/strong&gt; Powered by Google's open-weight &lt;strong&gt;Gemma 3 12B&lt;/strong&gt; for low-latency culinary ethnography and nutritional adaptation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of Backboard:&lt;/strong&gt; Integrated Backboard's Assistant and Thread management with memory persistence to maintain long-term household culinary profiles.&lt;/li&gt;
&lt;/ul&gt;

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