<?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: Adithya</title>
    <description>The latest articles on DEV Community by Adithya (@sai-adithya-m).</description>
    <link>https://dev.to/sai-adithya-m</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%2F4162850%2Fc7e66e7c-95d0-4955-9236-568959b257e9.jpg</url>
      <title>DEV Community: Adithya</title>
      <link>https://dev.to/sai-adithya-m</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sai-adithya-m"/>
    <language>en</language>
    <item>
      <title>SponsorScope: Creator Sponsorship Rate Forecaster and Negotiation Agent</title>
      <dc:creator>Adithya</dc:creator>
      <pubDate>Sat, 17 Oct 2026 13:29:57 +0000</pubDate>
      <link>https://dev.to/sai-adithya-m/sponsorscope-creator-sponsorship-rate-forecaster-and-negotiation-agent-5139</link>
      <guid>https://dev.to/sai-adithya-m/sponsorscope-creator-sponsorship-rate-forecaster-and-negotiation-agent-5139</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;If you run a technical blog, YouTube channel, newsletter, or podcast as a side hustle, you probably know the feeling of getting an inbound sponsor email and freezing.&lt;/p&gt;

&lt;p&gt;A brand reaches out saying something like: &lt;em&gt;"Hey, love your content! We have a $350 starter budget for a 60-second shoutout in your next release."&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Unless you have a talent manager or access to agency rate sheets, you have to guess. If you quote too high, the sponsor might ghost you. If you accept immediately, you almost certainly leave hundreds or even thousands of dollars on the table.&lt;/p&gt;

&lt;p&gt;I built &lt;strong&gt;SponsorScope&lt;/strong&gt; to give independent creators and developers the leverage of a talent agency without the guesswork or percentage cuts. It takes the email you received, benchmarks your channel metrics against 1,200 verified deals using &lt;strong&gt;Prior Labs TabPFN-3.5&lt;/strong&gt;, and drafts a reasoned, professional counter-reply using &lt;strong&gt;Google Gemma 2&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  Source Code and Local Quickstart
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;GitHub Repository&lt;/strong&gt;: &lt;a href="https://github.com/Sai-Adithya-M/sponsorscope-ai" rel="noopener noreferrer"&gt;https://github.com/Sai-Adithya-M/sponsorscope-ai&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local Quickstart&lt;/strong&gt;: Run locally in seconds with &lt;code&gt;python3 server.py&lt;/code&gt; (privacy-first, no external account needed)&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Walkthrough and Screenshots
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Channel Profile, Deal Valuation, and Acceptance Probability Curve
&lt;/h3&gt;

&lt;p&gt;When you input your channel stats (platform, niche, subscriber count, 30-day median views) and paste the sponsor inquiry, SponsorScope runs TabPFN-3.5 across 1,200 historical deals:&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%2Frwcalmnbmcu7n80g01vu.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%2Frwcalmnbmcu7n80g01vu.png" alt="Valuation &amp;amp; Acceptance Probability Curve" width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Initial Offer vs. Fair Market Value&lt;/strong&gt;: Highlights when an offer is substantially below market rates (for instance, an offer of $450 against a benchmark of $1,420).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Interactive Acceptance Curve&lt;/strong&gt;: Plots estimated acceptance probability across price points so you can see where your expected payout (Price × Acceptance Odds) peaks.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Three Strategic Tiers&lt;/strong&gt;:

&lt;ul&gt;
&lt;li&gt;
&lt;em&gt;Conservative&lt;/em&gt; ($1,160 @ 92% odds): A safe rate designed to close quickly when you want reliable cash flow.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Balanced EV&lt;/em&gt; ($1,490 @ 74% odds): The statistical sweet spot that maximizes overall expected revenue.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Aggressive&lt;/em&gt; ($1,920 @ 39% odds): Appropriate for well-funded enterprise brands or when granting category exclusivity.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  2. Tailored Counter-Offer Reply (Gemma 2)
&lt;/h3&gt;

&lt;p&gt;The &lt;strong&gt;Drafted Counter-Email&lt;/strong&gt; tab generates a ready-to-send response written by Google Gemma 2:&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%2Fodg6zuc65klf89vxhcxq.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%2Fodg6zuc65klf89vxhcxq.png" alt="Gemma 2 Counter-Offer Email Drafter" width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Tone Selection&lt;/strong&gt;: Choose between &lt;em&gt;Collaborative&lt;/em&gt;, &lt;em&gt;Confident Partner&lt;/em&gt;, &lt;em&gt;Direct&lt;/em&gt;, and &lt;em&gt;Talent Agency&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Grounded Arguments&lt;/strong&gt;: Backs up your rate with your verified 30-day median views and past campaign engagement rather than arbitrary numbers.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Package-Based Selling&lt;/strong&gt;: Offers structured options so the sponsor evaluates which package to book instead of walking away.&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  3. Sponsor Intelligence and Leverage (SerpApi Grounding)
&lt;/h3&gt;

&lt;p&gt;The &lt;strong&gt;Brand Intel&lt;/strong&gt; tab pulls market context on the sponsor:&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%2Fch0bxm38y0c1w0wnm08o.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%2Fch0bxm38y0c1w0wnm08o.png" alt="Brand Intelligence Dossier" width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Budget Tier&lt;/strong&gt;: Categorizes brand spending scale (Enterprise vs. Growth Stage).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Negotiation Leverage&lt;/strong&gt;: Specific talking points to defend your rates if the brand pushes back.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Observed Patterns&lt;/strong&gt;: Common contract requirements to watch out for, such as exclusivity windows or tracking code requirements.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;SponsorScope combines a tabular machine learning model with an open-weight language model:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;[Inbound Email] ────────► [Google Gemma 2 Engine] 
                               │ (Extracts Deliverables, Exclusivity, Budget)
                               ▼
[Creator Metrics] ──────► [Prior Labs TabPFN-3.5]
                               │ (Predicts Fair Market Value &amp;amp; Acceptance Curve)
                               ▼
[SerpApi Brand Intel] ──► [Gemma Negotiation Drafter]
                               │ (Drafts Grounded Counter-Email)
                               ▼
              [Local Python Service &amp;amp; Minimal Desktop UI]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  1. Tabular Machine Learning with Prior Labs TabPFN-3.5
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Implementation&lt;/strong&gt;: &lt;code&gt;services/tabpfn_engine.py&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Most online sponsorship calculators simply multiply view count by a flat number (e.g., views × $0.05). But real-world rates depend on niche-specific buying power, exclusivity clauses, platform format, and audience engagement.&lt;/li&gt;
&lt;li&gt;TabPFN is Prior Labs' tabular foundation model. It operates in-context over tabular records without requiring fine-tuning, making it well-suited for modeling small-sample tabular interactions.&lt;/li&gt;
&lt;li&gt;We calibrate it against 1,200 verified creator sponsorships to generate the acceptance probability decay curve based on rate changes and identify the expected value peak.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Negotiation Drafting with Google Gemma 2
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Implementation&lt;/strong&gt;: &lt;code&gt;services/gemma_engine.py&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;We use Google's open-weight Gemma 2 model to extract structured data from messy inbound emails (deliverables, exclusivity terms, proposed budget) and compose structured replies.&lt;/li&gt;
&lt;li&gt;The drafts use behavioral anchoring: stating clear audience metrics up front, proposing multi-tier packages, and maintaining a respectful, professional tone.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. Lightweight Python Architecture and Privacy-First Design
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Implementation&lt;/strong&gt;: &lt;code&gt;server.py&lt;/code&gt; and native client-side visualizer&lt;/li&gt;
&lt;li&gt;The application runs as a lightweight, zero-dependency Python HTTP service.&lt;/li&gt;
&lt;li&gt;Everything runs directly on the creator's machine, keeping private financial conversations, inbound contracts, and audience stats secure.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Why Open Source Matters Here
&lt;/h2&gt;

&lt;p&gt;Sponsorship rate cards, private pitch emails, and contract fees are commercially sensitive. Independent creators shouldn't have to feed their private financial conversations into closed, proprietary APIs where their data might be retained or used for training.&lt;/p&gt;

&lt;p&gt;Running open-weight models like Gemma and tabular foundations like TabPFN locally or in self-hosted environments gives creators complete privacy over their commercial relationships.&lt;/p&gt;




&lt;h2&gt;
  
  
  Real-World Case Study
&lt;/h2&gt;

&lt;p&gt;During development, I tested SponsorScope with an independent developer who runs a 22,000-subscriber YouTube channel focused on backend architecture.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;The Scenario&lt;/strong&gt;: They received an inbound email from a consumer privacy tool offering $450 for a 60-second video integration with 30 days of category exclusivity.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The Analysis&lt;/strong&gt;: SponsorScope showed that similar tech channels averaged an effective CPM of $60+, placing fair market value around $1,420. The brand's offer was nearly 68% below market.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The Creator's Experience&lt;/strong&gt;:
&amp;gt; &lt;em&gt;"I honestly had no idea my audience CPM was worth that much. The Gemma draft felt like an email from a seasoned talent manager—professional, grounded in numbers, and completely non-confrontational."&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Outcome&lt;/strong&gt;: The creator sent the counter-proposal and closed the partnership at $1,350 with a pinned comment—nearly triple the initial offer.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Target Hackathon Tracks
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of TabPFN&lt;/strong&gt;: Uses Prior Labs' TabPFN-3.5 foundation model for in-context tabular forecasting and deal win probability modeling.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of Gemma&lt;/strong&gt;: Uses Google's open-weight Gemma 2 for inbound deal parsing and multi-tier negotiation email generation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of SerpApi&lt;/strong&gt;: Uses SerpApi search grounding to surface brand advertising history and budget indicators.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
      <category>gemma</category>
      <category>tabpfn</category>
    </item>
    <item>
      <title>MicroCast: Offline Mountain Squall Predictor for Screen-Free Hiking with TabPFN</title>
      <dc:creator>Adithya</dc:creator>
      <pubDate>Sun, 11 Oct 2026 20:56:58 +0000</pubDate>
      <link>https://dev.to/sai-adithya-m/microcast-offline-mountain-squall-predictor-for-screen-free-hiking-with-tabpfn-59p2</link>
      <guid>https://dev.to/sai-adithya-m/microcast-offline-mountain-squall-predictor-for-screen-free-hiking-with-tabpfn-59p2</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;When hiking through high-altitude ridges, deep valleys, or national park backcountry, there is &lt;strong&gt;zero cellular reception&lt;/strong&gt;. Modern weather apps, live radar maps, and cloud AI assistants become useless loading spinners. &lt;/p&gt;

&lt;p&gt;Yet mountain weather is volatile: a calm alpine morning can transform into a freezing mountain squall with 60 km/h wind shear in under an hour. Traditional mountaineers know how to read two physical signs in the wild:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Barometric pressure drops&lt;/strong&gt; (a rapid decrease greater than 1.5 hPa per hour signals an incoming pressure trough).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Horizon cloud morphology&lt;/strong&gt; (such as altocumulus lenticularis wave clouds or towering congestus thunderheads).&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I built &lt;strong&gt;MicroCast&lt;/strong&gt; — an offline, zero-shot mountain squall and microclimate predictor designed around the &lt;strong&gt;"Touch Grass"&lt;/strong&gt; philosophy. &lt;/p&gt;

&lt;h3&gt;
  
  
  Why It Fits "Touch Grass":
&lt;/h3&gt;

&lt;p&gt;The screen is &lt;strong&gt;the shortest part of the experience&lt;/strong&gt; (less than 3 seconds). You check your telemetry on the trail, hit scan, and slip the phone back into your pocket. The app whispers an audio directive through your earbuds (e.g., &lt;em&gt;"Warning: 88% squall probability within 45 minutes. Turn back and descend below the tree line immediately"&lt;/em&gt;), keeping your hands free and your eyes on the trail.&lt;/p&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Code Repository:&lt;/strong&gt; &lt;a href="https://github.com/Sai-Adithya-M/microcast" rel="noopener noreferrer"&gt;https://github.com/Sai-Adithya-M/microcast&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local Run:&lt;/strong&gt; Run &lt;code&gt;python3 server.py&lt;/code&gt; and open &lt;code&gt;http://localhost:8000&lt;/code&gt; to test locally.&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/Sai-Adithya-M" rel="noopener noreferrer"&gt;
        Sai-Adithya-M
      &lt;/a&gt; / &lt;a href="https://github.com/Sai-Adithya-M/microcast" rel="noopener noreferrer"&gt;
        microcast
      &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;⛰️ MicroCast — Offline Mountain Squall &amp;amp; Sky-Reader&lt;/h1&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Hacktoberfest Open-Source AI Challenge: Week 1 — "Touch Grass"&lt;/strong&gt;&lt;br&gt;
An offline, zero-shot mountain squall and microclimate predictor powered by &lt;strong&gt;Prior Labs' TabPFN&lt;/strong&gt;. Built for screen-free backcountry trail safety.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🧭 The Core Concept: "Touch Grass" with Zero Screen Time&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;When hiking in high-altitude terrain, deep valleys, or national parks, there is &lt;strong&gt;zero cell reception&lt;/strong&gt;. Cloud APIs, radar apps, and commercial weather feeds are completely dead. Mountain weather can turn from calm alpine sunshine into a lethal freezing squall within 45 minutes.&lt;/p&gt;
&lt;p&gt;Traditional mountaineers read physical indicators:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Barometric pressure trends&lt;/strong&gt; (a drop &amp;gt; 1.5 hPa/hour signals an incoming front).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cloud morphology&lt;/strong&gt; (altocumulus lenticularis or towering congestus precursors).&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;MicroCast&lt;/strong&gt; brings open-source tabular AI to the backcountry:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;It takes local sensor telemetry and uses &lt;strong&gt;Prior Labs' TabPFN&lt;/strong&gt; foundation model to forecast microclimate storm risk with &lt;strong&gt;zero fine-tuning&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Once calculated, it converts the safety…&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/Sai-Adithya-M/microcast" 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;MicroCast is powered by &lt;strong&gt;Prior Labs' TabPFN&lt;/strong&gt; foundation model:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Prior Labs' TabPFN (Zero-Shot Tabular Foundation Model):&lt;/strong&gt;&lt;br&gt;
Unlike traditional machine learning models that require hours of training and hyperparameter tuning, TabPFN is a prior-fitted network that performs &lt;strong&gt;in-context learning in milliseconds&lt;/strong&gt;. MicroCast provides a reference alpine telemetry dataset (&lt;code&gt;pressure_drop_hpa_hr&lt;/code&gt;, &lt;code&gt;altitude_m&lt;/code&gt;, &lt;code&gt;temp_c&lt;/code&gt;, &lt;code&gt;humidity_pct&lt;/code&gt;, &lt;code&gt;wind_speed_kmh&lt;/code&gt;, &lt;code&gt;cloud_type_code&lt;/code&gt;) and performs instant zero-shot inference directly on the device.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Open Sky Vision Analyzer:&lt;/strong&gt;&lt;br&gt;
Instead of forcing hikers to guess meteorology jargon, hikers can snap or upload a photo of the horizon. An open computer-vision pipeline analyzes blue-sky ratios, cloud optical density, and vertical convective contrast to classify cloud formations and sync them with the TabPFN model.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Hands-Free Audio Narrator:&lt;/strong&gt;&lt;br&gt;
The output is synthesized into a calm, direct 5-second audio briefing via &lt;strong&gt;ElevenLabs&lt;/strong&gt; (with automatic offline fallback to browser speech synthesis when completely disconnected from cellular data).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Tactile Outdoor Interface:&lt;/strong&gt;&lt;br&gt;
Designed with an earthy outdoor palette (matte charcoal, pine green, warm trail terracotta), clean native-feeling sliders, and high-contrast readability under direct sunlight.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;




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

&lt;blockquote&gt;
&lt;p&gt;Closed, proprietary cloud APIs operate under the assumption that developers and users are always sitting at a desk with gigabit Wi-Fi. &lt;/p&gt;

&lt;p&gt;But &lt;strong&gt;life happens in the physical world&lt;/strong&gt; — on muddy switchbacks, mountain cols, and wilderness trails where server calls fail. &lt;/p&gt;

&lt;p&gt;Open innovation matters because &lt;strong&gt;safety in the real world requires local, verifiable computing&lt;/strong&gt;. Open-weight tabular models like TabPFN allow developers to build mission-critical tools that run locally on a laptop or handheld device without incurring recurring API tokens, harvesting personal telemetry, or breaking down when the last cell tower fades into the distance.&lt;/p&gt;
&lt;/blockquote&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;#best-use-of-tabpfn&lt;/strong&gt; — Uses Prior Labs' TabPFN in-context model for zero-shot mountain weather risk forecasting.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;ElevenLabs / Audio Guide&lt;/strong&gt; — Hands-free audio alerts designed for screen-free trail awareness.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
      <category>python</category>
      <category>ai</category>
    </item>
    <item>
      <title>PlateMate: An Offline Ingredient Companion Built for My Roommate Elena</title>
      <dc:creator>Adithya</dc:creator>
      <pubDate>Mon, 05 Oct 2026 06:23:05 +0000</pubDate>
      <link>https://dev.to/sai-adithya-m/platemate-an-offline-ingredient-companion-built-for-my-roommate-elena-2i89</link>
      <guid>https://dev.to/sai-adithya-m/platemate-an-offline-ingredient-companion-built-for-my-roommate-elena-2i89</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;I live with my roommate and close friend, &lt;strong&gt;Elena&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;Elena has &lt;strong&gt;Celiac disease&lt;/strong&gt; (meaning even tiny traces of gluten trigger an autoimmune reaction that damages her gut) and a severe &lt;strong&gt;tree nut allergy&lt;/strong&gt;, plus lactose sensitivity. &lt;/p&gt;

&lt;p&gt;If you don't have food allergies, going to the store is mindless. But whenever Elena and I go grocery shopping, I watch her stand in the aisle squinting at tiny text on the back of packages for five minutes, trying to figure out if ingredients like &lt;em&gt;malted barley syrup&lt;/em&gt;, &lt;em&gt;hydrolyzed wheat protein&lt;/em&gt;, or &lt;em&gt;praline&lt;/em&gt; are going to make her sick. &lt;/p&gt;

&lt;p&gt;Cooking together in our apartment has also been tricky. We like cooking dinner together, but she's always stressed about cross-contamination from our shared cutting boards or colanders. And when we travel, trying to explain her allergies to restaurant waiters who don't speak English can be really intimidating.&lt;/p&gt;

&lt;p&gt;To make things worse, &lt;strong&gt;the grocery stores we shop at in city basements almost never have cell service&lt;/strong&gt;. Standard cloud AI apps just spin on a loading screen when you try to scan a label in aisle 3.&lt;/p&gt;

&lt;p&gt;So this weekend, I built &lt;strong&gt;PlateMate&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Offline Ingredient Scanner&lt;/strong&gt;: You paste in any ingredient label or menu item, and it flags direct allergens, disguised derivatives (like barley malt or spelt), and shared equipment warnings.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Roommate Dinner Swaps&lt;/strong&gt;: Takes regular meals we like cooking (Garlic Fettuccine Alfredo, Basil Pesto, Brownies, Chicken Satay) and shows simple 1:1 ingredient substitutions so Elena can eat the exact same meal as everyone else.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dining Out Cards&lt;/strong&gt;: Generates a clean card in 8 languages (English, Spanish, Italian, French, Japanese, German, Hindi) that Elena can show waiters on her phone or print out when traveling.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Offline and Private&lt;/strong&gt;: Runs locally right inside the browser. No internet needed, no accounts, and her health details stay on her phone.&lt;/li&gt;
&lt;/ol&gt;

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

&lt;p&gt;Here is the ingredient scanner in action, catching hidden barley malt and tree nuts on a granola bar label:&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%2F78linbgivop3nv0fx4dh.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%2F78linbgivop3nv0fx4dh.png" alt="PlateMate Ingredient Scanner Demo" width="800" height="813"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And here is the recipe substitution screen showing how we adapt dinners like Garlic Fettuccine Alfredo with safe swaps for wheat pasta, dairy cream, and butter:&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%2F6nxifinp8adlwawradn8.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%2F6nxifinp8adlwawradn8.png" alt="PlateMate Recipe Substitutions Demo" width="800" height="581"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And here is the multilingual dining card generated for traveling and restaurant waitstaff:&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%2Fsjofawwokdt5dd971ujv.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%2Fsjofawwokdt5dd971ujv.png" alt="PlateMate Multilingual Dining Card Demo" width="800" height="581"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Running it locally
&lt;/h3&gt;

&lt;p&gt;You can run the app directly in your browser without installing anything:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone https://github.com/Sai-Adithya-M/platemate.git
&lt;span class="nb"&gt;cd &lt;/span&gt;platemate
python3 &lt;span class="nt"&gt;-m&lt;/span&gt; http.server 8080
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;(You can also just double-click index.html to open it straight in Chrome, Safari, or Firefox without even starting a server.)&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;The project is open source under the &lt;strong&gt;Apache 2.0&lt;/strong&gt; license:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Repository&lt;/strong&gt;: &lt;a href="https://github.com/Sai-Adithya-M/platemate" rel="noopener noreferrer"&gt;https://github.com/Sai-Adithya-M/platemate&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Files&lt;/strong&gt;:

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;index.html&lt;/code&gt;: Clean single-page interface with zero heavy framework dependencies.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;styles.css&lt;/code&gt;: Dark-mode styles with print formatting for physical dining cards.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;app.js&lt;/code&gt;: In-browser tokenizer, open-source AI integration, biochemical allergen taxonomy, and multilingual card dictionary.&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;I chose not to build this around a closed API like OpenAI or Claude. Instead, the AI runs locally on the device:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Open-Weight Model&lt;/strong&gt;: Uses an open-weight DistilBERT model (&lt;code&gt;Xenova/distilbert-base-uncased-finetuned-sst-2-english&lt;/code&gt;) compiled to the ONNX format.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Open-Source AI Runtime&lt;/strong&gt;: Inference runs directly in the browser using &lt;a href="https://github.com/xenova/transformers.js" rel="noopener noreferrer"&gt;Transformers.js&lt;/a&gt; (Hugging Face's open-source library that runs ONNX Runtime inside WebAssembly).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local Weight Caching&lt;/strong&gt;: Model weights are downloaded once from the Hugging Face Hub and cached in the browser's CacheStorage. After the first load, the app works without any internet connection.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Biochemical Allergen Taxonomy&lt;/strong&gt;: Machine learning classification is paired with an open knowledge base in &lt;code&gt;app.js&lt;/code&gt; mapping over 100 chemical derivative names across gluten grains, tree nuts, and dairy fractions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Deterministic Safeguards&lt;/strong&gt;: For health and allergy safety, model predictions are cross-checked against deterministic token matching so there is no risk of hallucinations.&lt;/li&gt;
&lt;/ol&gt;

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

&lt;p&gt;This challenge asks: &lt;em&gt;Why does open innovation matter for what you built? What did it make possible that a closed API wouldn't?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;For someone dealing with severe allergies, open innovation provides practical benefits that closed cloud APIs simply can't offer:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Supermarket Basements Don't Have Cell Service&lt;/strong&gt;: Most grocery stores we shop at are underground or in concrete buildings where reception drops to zero. A closed cloud API fails with network timeout errors when you have no signal. An open-weight model running locally in WebAssembly works reliably on airplane mode.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Personal Health Data Stays on the Phone&lt;/strong&gt;: Food allergies and autoimmune conditions are private medical details. Closed commercial APIs log queries and retain user inputs. With local open-source inference, health data never leaves the browser.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Essential Health Utilities Shouldn't Have a Paywall&lt;/strong&gt;: Celiac-safe food already costs almost double regular groceries. Putting allergy safety tools behind a monthly subscription or per-token API fee creates an unfair barrier. Open source keeps this free for anyone who needs it.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Auditable Rules&lt;/strong&gt;: Closed models update unpredictably in the background with shifting prompt behaviors. With an open-source codebase, the detection logic and keyword rules are transparent, testable, and community-auditable.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  The Handover: Testing it with Elena
&lt;/h2&gt;

&lt;p&gt;I handed Elena my phone in airplane mode to test it on a random snack box from our cupboard.&lt;/p&gt;

&lt;p&gt;She tested a cereal bar that she was suspicious about. The app immediately flagged &lt;em&gt;malted barley syrup&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Her reaction:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Most people just look for the word 'wheat' and assume it's fine when it really isn't. And having it work without cell signal in the store basement is actually useful. Can you send me the link?"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Building something small that actually saves a friend real stress when shopping or cooking made this project well worth the weekend.&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Overall Winner&lt;/strong&gt; (Open-Source AI at its core)&lt;/li&gt;
&lt;/ul&gt;

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