<?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: Rajratna Dhiwar</title>
    <description>The latest articles on DEV Community by Rajratna Dhiwar (@rajratna_dhiwar_ffc4f8eb4).</description>
    <link>https://dev.to/rajratna_dhiwar_ffc4f8eb4</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%2F4179635%2F14886335-171b-4d62-917f-0ce7db63904e.jpg</url>
      <title>DEV Community: Rajratna Dhiwar</title>
      <link>https://dev.to/rajratna_dhiwar_ffc4f8eb4</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/rajratna_dhiwar_ffc4f8eb4"/>
    <language>en</language>
    <item>
      <title>I got 2 Customers with just my Prototype</title>
      <dc:creator>Rajratna Dhiwar</dc:creator>
      <pubDate>Sat, 17 Oct 2026 18:14:53 +0000</pubDate>
      <link>https://dev.to/rajratna_dhiwar_ffc4f8eb4/i-got-2-customers-with-just-my-prototype-3ej3</link>
      <guid>https://dev.to/rajratna_dhiwar_ffc4f8eb4/i-got-2-customers-with-just-my-prototype-3ej3</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;p&gt;&lt;strong&gt;As a guy who has worked in sales and generated revenue of 1.4 MILLION Rs IN MY FIRST MONTH of business, i can tell you that this product is going to change how traditional Businesses work! Because i know where the Gap is&lt;/strong&gt;&lt;/p&gt;

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

&lt;p&gt;ReplyDesk is a local, privacy-first AI customer-reply assistant built for solo boutique merchants, home bakers, and thrift apparel sellers running their side hustles on Instagram DMs and WhatsApp.&lt;br&gt;
(Do check the docs &lt;a href="https://github.com/Rajratna-D/Reply-Desk/tree/main/docs" rel="noopener noreferrer"&gt;https://github.com/Rajratna-D/Reply-Desk/tree/main/docs&lt;/a&gt;)&lt;/p&gt;
&lt;h3&gt;
  
  
  The Problem
&lt;/h3&gt;

&lt;p&gt;Micro-merchants in emerging markets spend 3 to 5 hours every single day answering repetitive, multi-lingual buyer queries:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"Kitne ka hai?" (Price inquiry)&lt;/li&gt;
&lt;li&gt;"Is size XL available in lavender?" (Inventory check)&lt;/li&gt;
&lt;li&gt;"Can you courier to Pune by Friday?" (Delivery timeline and fees)&lt;/li&gt;
&lt;li&gt;"What is your return window?" (Exchange policy)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Delayed responses kill conversions: buyers message 3 sellers simultaneously and buy from whoever replies first. However, solo creators cannot afford $30 to $50/month SaaS platforms or unpredictable cloud API tokens. Worse, generic cloud LLMs regularly hallucinate non-existent discounts, misquote inventory, and leak buyer contact information to third-party servers.&lt;/p&gt;
&lt;h3&gt;
  
  
  The Solution
&lt;/h3&gt;

&lt;p&gt;ReplyDesk runs 100% on the merchant's local laptop. It ingests the shop's actual product catalogue, pricing rules, and delivery policies into an on-device SQLite database. When a customer inquiry arrives, ReplyDesk drafts an accurate, polite reply in the customer's language and dialect (English, Hindi, Marathi, or Hinglish) within 2 seconds. &lt;/p&gt;

&lt;p&gt;Nothing is ever dispatched blindly: the merchant reviews drafts in a streamlined inbox triage queue, edits if needed, and approves with a single click.&lt;/p&gt;

&lt;p&gt;Customer Message (WhatsApp / IG)&lt;br&gt;
       │&lt;br&gt;
       ▼&lt;br&gt;
[ PII Sanitization ]  --&amp;gt; Masks phone numbers, preserves Order IDs&lt;br&gt;
       │&lt;br&gt;
       ▼&lt;br&gt;
[ SQLite FTS5 Hybrid Search ] --&amp;gt; Retrieves exact products, prices &amp;amp; policies&lt;br&gt;
       │&lt;br&gt;
       ▼&lt;br&gt;
[ Local Gemma 2B via Ollama ] --&amp;gt; Drafts natural reply in buyer's language&lt;br&gt;
       │&lt;br&gt;
       ▼&lt;br&gt;
[ Deterministic Guardrails ] --&amp;gt; Zero-hallucination verification (Price &amp;amp; Stock)&lt;br&gt;
       │&lt;br&gt;
       ▼&lt;br&gt;
[ Merchant Review Inbox ]  --&amp;gt; One-click human approval &amp;amp; dispatch&lt;/p&gt;
&lt;h3&gt;
  
  
  Who Would Pay For This?
&lt;/h3&gt;

&lt;p&gt;Independent boutique owners, artisanal makers, home bakers, and social commerce solopreneurs,anyone who wants to make their business grow and acquire new customers as well as retain them**. They would pay a one-time fee of $29 to $49 (or a $5/month local sync fee) because:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;It returns 3+ hours of their day back to making products and fulfilling orders.&lt;/li&gt;
&lt;li&gt;It completely eliminates cloud API bills (zero per-token charges).&lt;/li&gt;
&lt;li&gt;It guarantees that a chatbot will never underquote a custom cake or promise out-of-stock sizes.
And i might even give it out for free. 
---&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;GitHub Repository: &lt;a href="https://github.com/Rajratna-D/Reply-Desk" rel="noopener noreferrer"&gt;https://github.com/Rajratna-D/Reply-Desk&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Architecture Documentation: &lt;a href="https://github.com/Rajratna-D/Reply-Desk/blob/main/docs/ARCHITECTURE.md" rel="noopener noreferrer"&gt;https://github.com/Rajratna-D/Reply-Desk/blob/main/docs/ARCHITECTURE.md&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Engineering Build Log: &lt;a href="https://github.com/Rajratna-D/Reply-Desk/blob/main/docs/BUILD_LOG.md" rel="noopener noreferrer"&gt;https://github.com/Rajratna-D/Reply-Desk/blob/main/docs/BUILD_LOG.md&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Do check the Future Upgrades : &lt;a href="https://github.com/Rajratna-D/Reply-Desk/blob/main/docs/FUTURE_UPGRADES.md" rel="noopener noreferrer"&gt;https://github.com/Rajratna-D/Reply-Desk/blob/main/docs/FUTURE_UPGRADES.md&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
  
  
  Split-Screen Interactive Workflow
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Customer Simulator: Test inquiries in English, Hindi (Devanagari), Marathi, and Hinglish.&lt;/li&gt;
&lt;li&gt;Owner Inbox Triage: Review AI drafts side-by-side with matched catalogue context, confidence scores, and safety flags.&lt;/li&gt;
&lt;li&gt;Guardrail Telemetry: Real-time visual alerts if a price mismatch or inventory discrepancy is detected.&lt;/li&gt;
&lt;li&gt;Catalogue Live Search: SQLite FTS5 full-text search across product variants and seller FAQs.&lt;/li&gt;
&lt;li&gt;Interactive Benchmarking: Built-in evaluation page to run reproducible test suites on-device against live models.&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/Rajratna-D" rel="noopener noreferrer"&gt;
        Rajratna-D
      &lt;/a&gt; / &lt;a href="https://github.com/Rajratna-D/Reply-Desk" rel="noopener noreferrer"&gt;
        Reply-Desk
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Local-first, review-only AI reply assistant for Indian boutique sellers. Powered by Gemma via Ollama across English, Hindi, Marathi, and Hinglish. 100% offline.
    &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;ReplyDesk: Local AI Customer-Reply Assistant for Small Sellers&lt;/h1&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;DEV / MLH Hacktoberfest 2026 Open-Source AI Challenge (Week 2: "Side Hustle")&lt;/strong&gt;&lt;br&gt;
Built with open-weight &lt;strong&gt;Gemma 4 Effective 2B&lt;/strong&gt; and &lt;strong&gt;Gemma 2 2B&lt;/strong&gt;, running locally on-device with zero cloud APIs, zero per-reply subscription bills, and complete customer privacy.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href="https://github.com/Rajratna-D/Reply-Desk/LICENSE" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/5b60841bea9e11d9d0b0950d690c9bc554e06385634056a7d5d62a15d1a4eabe/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4170616368655f322e302d626c75652e737667" alt="License: Apache 2.0"&gt;&lt;/a&gt;
&lt;a href="https://www.python.org/downloads/" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/93a33cfc2339ec3fa9be792576576fbaafc42b0c7031285662b02f3aca1e1c59/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f707974686f6e2d332e31302b2d626c75652e737667" alt="Python 3.10+"&gt;&lt;/a&gt;
&lt;a href="https://ollama.com" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/cfcc25edb4ba3051fec0e95d7926b67a15d4d2272995b5aface573b37e7c5f7b/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4f6c6c616d612d4f66666c696e65253230496e666572656e63652d626c61636b2e737667" alt="Ollama"&gt;&lt;/a&gt;
&lt;a href="https://ai.google.dev/gemma" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/6811b062d61c667dc9eeb42b45ec067103b01e32cf8a4569127d1296a43c1df9/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f47656d6d615f322d3242253230253743253230342d2d6269742d6f72616e67652e737667" alt="Model"&gt;&lt;/a&gt;
&lt;a href=""&gt;&lt;img src="https://camo.githubusercontent.com/fef95b6c511f735f69311a5daa57476612d68364f73339cfe7a10ac36c17804e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f74657374732d34352532307061737365642d627269676874677265656e2e737667" alt="Tests Passing"&gt;&lt;/a&gt;
&lt;a href=""&gt;&lt;img src="https://camo.githubusercontent.com/60b5cbab471b0cd31f278da069c2c015dae1b4633588759ca2d718769ca77c22/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f507269766163792d3130302532352532304f6e2d2d4465766963652d737563636573732e737667" alt="Privacy"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;The Problem&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;Small independent merchants running boutique shops on Instagram and WhatsApp (apparel, home bakeries, handmade jewellery) spend 3 to 5 hours every single day answering repetitive buyer inquiries:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;em&gt;"Kitne ka hai?"&lt;/em&gt; (Price check)&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;"Is size XL available in blue?"&lt;/em&gt; (Variant and stock check)&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;"Can you deliver to Pune in 2 days?"&lt;/em&gt; (Delivery policy)&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;"What is your return policy?"&lt;/em&gt; (Return window)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Delayed replies directly cause abandoned carts and lost sales. Many buyers inquire in a mix of Hindi, Marathi, and Hinglish. Small sellers often reply in a rush with inaccurate numbers or inconsistent details. Generic cloud chatbots hallucinate non-existent discounts, invent uncatalogued inventory…&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/Rajratna-D/Reply-Desk" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;The repository is open-sourced under the Apache License 2.0 and features a modular Python architecture:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;engine/service.py: Core orchestration pipeline handling draft generation, fallback triggering, and telemetry logging.&lt;/li&gt;
&lt;li&gt;engine/guardrails.py: Deterministic safety and price-grounding guardrails (whitelisting customer-echoed figures and volume order multiples).&lt;/li&gt;
&lt;li&gt;engine/retrieval.py: SQLite FTS5 hybrid retrieval with multi-turn pronoun expansion (prior_queries) and persistent embedding cache.&lt;/li&gt;
&lt;li&gt;engine/importer.py: Robust CSV/JSON shop catalogue ingestion with schema validation and preservation of seller-saved FAQs.&lt;/li&gt;
&lt;li&gt;eval/run_eval.py: Automated 34-case offline benchmarking suite measuring price accuracy, script consistency, and safety adherence.&lt;/li&gt;
&lt;li&gt;ui/: Modern Streamlit dark-mode interface with split-screen customer and merchant workflows.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;h3&gt;
  
  
  1. Open-Source AI Stack
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Foundation Models: Open-weight Google Gemma 2 2B (gemma2:2b) and Gemma 4 Effective 2B (gemma4:e2b).&lt;/li&gt;
&lt;li&gt;Local Inference: Ollama running locally on CPU or consumer GPU (4-bit quantization, consuming under 1.8 GB of RAM).&lt;/li&gt;
&lt;li&gt;Zero Cloud Footprint: Completely functional with Wi-Fi disabled. All prompts, context retrieval, and generation happen on localhost.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Architecture &amp;amp; Deterministic Guardrails
&lt;/h3&gt;

&lt;p&gt;Large language models alone are prone to hallucinating numbers and policies. ReplyDesk sandwiches the open-weight model between deterministic software layers:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Pre-Flight PII Redaction: Masks customer telephone numbers and email addresses before prompt assembly, while safely preserving alphanumeric order IDs and courier tracking codes.&lt;/li&gt;
&lt;li&gt;SQLite FTS5 Hybrid Retrieval: Fast full-text indexing queries product names, descriptions, tags, and shop policies. If pronouns are detected in conversational follow-ups (e.g., "Does it come in red?"), the engine contextually expands the search query using previous turns.&lt;/li&gt;
&lt;li&gt;Structured Instruction Prompting: Guides Gemma to output strict JSON (draft_reply, language, confidence, needs_check, reasoning).&lt;/li&gt;
&lt;li&gt;Post-Generation Numeric Verification: Extracts all numbers from the draft reply and verifies them against the ground-truth catalogue. Legitimate multiples (e.g., buying 2 shirts for 2x price) and customer-quoted figures are allowed; invented prices or unlisted discounts are instantly flagged with a red needs_check warning for merchant review.&lt;/li&gt;
&lt;/ol&gt;




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

&lt;p&gt;Open innovation is what made ReplyDesk possible. A closed-source API model (e.g., OpenAI or Anthropic) fails the side-hustle merchant on every dimension:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Operating Cost: Closed APIs cost $0.20 to $0.40 per 1,000 inquiries ($50 to $100/mo). ReplyDesk costs $0.00 to run on the merchant's existing laptop using ~0.001 kWh of power.&lt;/li&gt;
&lt;li&gt;Customer Privacy: Closed APIs send customer addresses, phone numbers, and margins to third-party clouds. ReplyDesk is 100% on-device; private conversations never leave the shopkeeper's hard drive.&lt;/li&gt;
&lt;li&gt;Offline Reliability: Closed APIs break during internet outages or traveling. ReplyDesk is 100% offline with zero network roundtrips.&lt;/li&gt;
&lt;li&gt;Longevity and Control: Closed APIs are subject to forced deprecations, rate limits, and price hikes. Open-weight models can run locally for years without breaking.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Open weights turn AI from a luxury corporate subscription into an accessible local utility for independent shopkeepers.&lt;/p&gt;




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

&lt;p&gt;ReplyDesk was designed, tested, and polished using an agentic pairing workflow. The test harness was developed iteratively with automated regression checks:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;45 automated unit and regression tests passing in 15 seconds (pytest).&lt;/li&gt;
&lt;li&gt;Live telemetry benchmarking recorded in eval/reports/latest_eval.md.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;To ground ReplyDesk in real hustle conditions, I tested the system against two actual small businesses:&lt;br&gt;
They will pay me if made the Agent according to their needs and preferences.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Sandhya's Home Kitchen (An independent woman who has a talent of making food products):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Catalogue: festive foods, modaks, tea cakes, eggless cupcakes, and multiple delicious dishes, and strict 24-hour advance notice policies.&lt;/li&gt;
&lt;li&gt;Result: Gemma 2B handled bilingual queries ("Do you have eggless chocolate cake and can you deliver to Aundh today?"), politely informing the customer of the 24-hour baking window while highlighting same-day pickup options. Saved ~2.5 hours of texting during busy baking mornings.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Honey's Sofa Shop (An experienced craftsmanship in making Really good Sofas):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Catalogue: Custom built sofas, Pre-Built Sofas and 7-day exchange policies.&lt;/li&gt;
&lt;li&gt;Result: Resolved the user needs, and noting their requirements, return inquiries across Hinglish and Marathi without confusing inventory status or hallucinating free shipping below the policy threshold.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Their data is Private but i have some sample users in the repo feel free to test with that&lt;/strong&gt;&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Trust me guys this has a lot of potential, when i will deploy this for user with all the API keys for seller's business, it is going to play a really huge role in that business&lt;/strong&gt;&lt;br&gt;
I will be using the Partner technologies for these upgrades for sure. &lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;Primary Challenge Track: Hacktoberfest Open-Source AI Challenge Week 2: "Side Hustle"&lt;/li&gt;
&lt;li&gt;Open-Weight / Gemma Track: Best use of open-weight Google Gemma models (Gemma 2 2B / Gemma 4 Effective 2B) running entirely on-device via local inference.&lt;/li&gt;
&lt;/ul&gt;

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