<?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: Shivam Singh</title>
    <description>The latest articles on DEV Community by Shivam Singh (@thshivam).</description>
    <link>https://dev.to/thshivam</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%2F4154836%2Fafc3be95-ec59-44dc-ac2a-79e1798c5112.jpg</url>
      <title>DEV Community: Shivam Singh</title>
      <link>https://dev.to/thshivam</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/thshivam"/>
    <language>en</language>
    <item>
      <title>Guardian — The AI Safety Companion I Built for My Friends &amp; Family</title>
      <dc:creator>Shivam Singh</dc:creator>
      <pubDate>Sun, 04 Oct 2026 19:21:09 +0000</pubDate>
      <link>https://dev.to/thshivam/guardian-the-ai-safety-companion-i-built-for-my-friends-family-1ojh</link>
      <guid>https://dev.to/thshivam/guardian-the-ai-safety-companion-i-built-for-my-friends-family-1ojh</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;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%2Fu7weuuhhvidx7s8ve2yo.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%2Fu7weuuhhvidx7s8ve2yo.png" alt="Guardian Cover Image" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;This project started with a real incident.&lt;/p&gt;

&lt;p&gt;My friend Shubham got scammed on the day his pocket money arrived.&lt;/p&gt;

&lt;p&gt;He decided to buy lottery tickets and purchased two tickets for ₹1,000 each. Later, when he checked his lottery number on a website, it showed that he had supposedly won &lt;strong&gt;₹15 lakh&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Soon after, he received messages telling him that he had won the lottery and that he needed to pay &lt;strong&gt;₹2,000 through a QR code&lt;/strong&gt; to process the ₹15 lakh payment.&lt;/p&gt;

&lt;p&gt;He believed it.&lt;/p&gt;

&lt;p&gt;He paid the ₹2,000.&lt;/p&gt;

&lt;p&gt;After that, the person who had contacted him stopped responding.&lt;/p&gt;

&lt;p&gt;The lottery tickets had already cost him ₹2,000, and the additional payment added another ₹2,000, making the total loss &lt;strong&gt;₹4,000&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;That incident made me think about a problem I see much more often.&lt;/p&gt;

&lt;p&gt;My parents, relatives, and friends regularly send me messages like:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Is this real?"&lt;/p&gt;

&lt;p&gt;"Should I click this link?"&lt;/p&gt;

&lt;p&gt;"They are asking for money. Is this a scam?"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Not everyone knows how to inspect a suspicious URL, recognize social-engineering tactics, or understand whether a payment request is legitimate.&lt;/p&gt;

&lt;p&gt;So I built &lt;strong&gt;Guardian&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Guardian is a WhatsApp-first AI safety companion that lets someone simply &lt;strong&gt;forward a suspicious message before acting on it&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;It can analyze:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Text messages&lt;/li&gt;
&lt;li&gt;Suspicious URLs&lt;/li&gt;
&lt;li&gt;Screenshots and images&lt;/li&gt;
&lt;li&gt;Voice notes&lt;/li&gt;
&lt;li&gt;English, Hindi, and Hinglish&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Instead of giving a complicated technical explanation, Guardian responds with three simple things:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Risk → Why → What to do&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The goal isn't to replace human judgment or claim that something is "100% a scam."&lt;/p&gt;

&lt;p&gt;The goal is much simpler:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Give people a second opinion before they click, pay, or share something sensitive.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And that is where the name comes from:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Before you trust it, ask Guardian.&lt;/strong&gt;&lt;/p&gt;

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

&lt;p&gt;So I recreated the story that inspired Guardian with my friend Shubham.&lt;/p&gt;

&lt;p&gt;The video starts with me asking him:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Shubham, batao tumhare saath kya hua?"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;He explains how he received a message saying that he had won ₹15 lakh in a lottery, and was then asked to pay money through a QR code to process the prize.&lt;/p&gt;

&lt;p&gt;After hearing his story, I introduce the simple solution:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Before paying, clicking, or sharing anything suspicious — forward it to Guardian.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Then, instead of just explaining how Guardian works, I actually use it in the same video.&lt;/p&gt;

&lt;p&gt;I forward the suspicious message to Guardian and show how the entire process works from a user's perspective:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Forward → Guardian analyzes → Get a simple explanation → Decide safely&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The important part is that the user doesn't need to understand AI, phishing, URLs, OCR, search APIs, or any technical details.&lt;/p&gt;

&lt;p&gt;They just need to know how to forward a message on WhatsApp.&lt;/p&gt;

&lt;p&gt;That's the experience I wanted to build for my parents, relatives, friends, and anyone who isn't comfortable evaluating suspicious digital messages themselves.&lt;/p&gt;

&lt;h3&gt;
  
  
  Video Demo
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://youtu.be/9LDguc0cTao?si=9hfbhi0uaWPZ-g9O" rel="noopener noreferrer"&gt;https://youtu.be/9LDguc0cTao?si=9hfbhi0uaWPZ-g9O&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The demo shows:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The real problem that inspired Guardian&lt;/li&gt;
&lt;li&gt;The lottery scam scenario&lt;/li&gt;
&lt;li&gt;How Guardian identifies the risk&lt;/li&gt;
&lt;li&gt;How simple the WhatsApp interaction is&lt;/li&gt;
&lt;li&gt;How a user can get a second opinion before making a payment&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Try Guardian Yourself
&lt;/h3&gt;

&lt;p&gt;Don't just read about Guardian, try it.&lt;/p&gt;

&lt;p&gt;Send a suspicious message, link, screenshot, or voice note directly to Guardian on WhatsApp:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;📱 WhatsApp: +91 9236851502&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;👉 &lt;strong&gt;&lt;a href="https://wa.me/qr/CIT2AOWPTOMQG1?s=v" rel="noopener noreferrer"&gt;Try Guardian on WhatsApp&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Guardian will analyze it and reply with a simple:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Risk → Why → What to do&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you've ever received a message and wondered &lt;em&gt;"Is this real or a scam?"&lt;/em&gt; — send it to Guardian.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;For testing, please use sample or non-sensitive messages. Never send real OTPs, passwords, banking details, or other confidential information.&lt;br&gt;
I wanted the demo to show the problem first, not just the technology.&lt;/p&gt;
&lt;/blockquote&gt;

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

&lt;p&gt;The complete source code is open source on GitHub:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/Th-Shivam/Guardian-HF2026" rel="noopener noreferrer"&gt;Guardian — GitHub&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The repository contains the FastAPI backend, WhatsApp Web bridge, OCR pipeline, Gemma reasoning layer, SerpApi URL verification, ElevenLabs speech-to-text integration, Sentry tracing, and deployment configuration.&lt;/p&gt;

&lt;h3&gt;
  
  
  Architecture
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;WhatsApp
   ↓
Baileys WhatsApp Web Bridge
   ↓
Message normalization
   ↓
Safety signal analysis
   ↓
URL extraction + SerpApi verification
   ↓
Gemma risk reasoning
   ↓
Safe response formatting
   ↓
WhatsApp

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



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

&lt;p&gt;Guardian is built around &lt;strong&gt;Gemma, an open-weight AI model&lt;/strong&gt;, as the core reasoning layer. I use &lt;strong&gt;Gemma 3-27B Instruct&lt;/strong&gt; through an OpenAI-compatible interface, which keeps the model layer replaceable and leaves a clear path to local inference later.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Gemma 3-27B Instruct&lt;/strong&gt; analyzes the message and produces a structured risk assessment.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;SerpApi&lt;/strong&gt; provides live web evidence when a suspicious URL needs verification.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tesseract OCR&lt;/strong&gt; extracts text from screenshots locally.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;ElevenLabs Speech-to-Text&lt;/strong&gt; converts voice notes into text before sending them through the same Guardian pipeline.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Baileys&lt;/strong&gt; connects Guardian to WhatsApp, allowing users to simply forward suspicious messages.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sentry Agent Tracing&lt;/strong&gt; Guardian's AI workflow is also instrumented with Sentry Agent Tracing so I can see where time is spent across the pipeline.
For example, a single request can be traced across message normalization, safety analysis, URL verification, Gemma reasoning, and response formatting.&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%2Fxh29eevlvsmwm0eosork.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%2Fxh29eevlvsmwm0eosork.png" alt="Guardian's Sentry logs" width="800" height="399"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The backend is built with &lt;strong&gt;FastAPI&lt;/strong&gt;, while the WhatsApp bridge is built with &lt;strong&gt;Node.js&lt;/strong&gt; and deployed on &lt;strong&gt;Render&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I intentionally kept the AI layer modular. Today Guardian uses hosted Gemma through an OpenAI-compatible API, but the same architecture can be adapted to a self-hosted/local Gemma deployment without redesigning the entire application.&lt;/p&gt;

&lt;p&gt;The goal was not to build another chatbot. It was to make &lt;strong&gt;AI-powered scam checking as simple as forwarding a WhatsApp message.&lt;/strong&gt;&lt;/p&gt;

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

&lt;p&gt;Guardian deals with messages that can contain sensitive information, suspicious links, screenshots, and personal conversations. For this kind of product, I did not want the AI layer to be a completely closed and irreplaceable component.&lt;/p&gt;

&lt;p&gt;Using an &lt;strong&gt;open-weight model like Gemma&lt;/strong&gt; gives Guardian a much more flexible foundation. The model can be replaced, self-hosted, fine-tuned, or moved to local inference as the project evolves. The rest of the Guardian pipeline does not need to be redesigned around a single closed AI provider.&lt;/p&gt;

&lt;p&gt;Open innovation also makes the architecture more adaptable. Today Guardian uses hosted Gemma through an OpenAI-compatible interface, but the same reasoning layer can be connected to a self-hosted Gemma deployment in the future.&lt;/p&gt;

&lt;p&gt;For a safety-focused tool, that flexibility matters because &lt;strong&gt;privacy, cost, deployment environment, and model control can change over time&lt;/strong&gt;.&lt;/p&gt;

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

&lt;p&gt;Guardian is being entered into the following categories:&lt;/p&gt;

&lt;h3&gt;
  
  
  Featured Categories
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of Gemma&lt;/strong&gt; — Gemma 3 27B Instruct is the core reasoning model used by Guardian to analyze suspicious messages and generate risk assessments.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of Render&lt;/strong&gt; — Guardian's backend and WhatsApp bridge are deployed on Render.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Partner Categories
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of ElevenLabs&lt;/strong&gt; — ElevenLabs Speech-to-Text converts WhatsApp voice notes into text so they can go through the same Guardian safety pipeline.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of Sentry Agent Tracing&lt;/strong&gt; — Sentry traces Guardian's AI workflow, including message processing, URL verification, Gemma reasoning, and response formatting.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of SerpApi&lt;/strong&gt; — SerpApi provides live web evidence for suspicious URLs before Guardian gives its assessment.&lt;/li&gt;
&lt;/ul&gt;

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