<?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: Akash Jha</title>
    <description>The latest articles on DEV Community by Akash Jha (@akashjha518).</description>
    <link>https://dev.to/akashjha518</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%2F4156796%2F06e205fb-276e-49d7-995d-2723ad56778f.png</url>
      <title>DEV Community: Akash Jha</title>
      <link>https://dev.to/akashjha518</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/akashjha518"/>
    <language>en</language>
    <item>
      <title>QuietSOC 🔐 — Stop Drowning in Logs. Start With the Evidence.</title>
      <dc:creator>Akash Jha</dc:creator>
      <pubDate>Mon, 26 Oct 2026 04:43:25 +0000</pubDate>
      <link>https://dev.to/akashjha518/quietsoc-stop-drowning-in-logs-start-with-the-evidence-1jed</link>
      <guid>https://dev.to/akashjha518/quietsoc-stop-drowning-in-logs-start-with-the-evidence-1jed</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-week3-2026-10-19"&gt;Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;QuietSOC is a concept for a local-first AI assistant designed to make security log investigation less tedious for junior Security Operations Center (SOC) analysts.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Security analysts regularly deal with large volumes of authentication events, failed login attempts, unusual access patterns, and other security signals. Reviewing these events manually takes time that could be spent investigating the incidents that matter most.&lt;/p&gt;

&lt;p&gt;QuietSOC aims to simplify the first stage of that workflow.&lt;/p&gt;

&lt;p&gt;The proposed application would let an analyst upload a Windows authentication log or normalized CSV file and receive an investigation brief containing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Suspicious activity:&lt;/strong&gt; Rule-based identification of repeated failed logins and potentially suspicious authentication sequences.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;An understandable explanation:&lt;/strong&gt; AI-generated summaries that explain what the events might mean in plain language.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Traceable evidence:&lt;/strong&gt; Relevant event IDs, timestamps, and supporting log entries.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Recommended next steps:&lt;/strong&gt; Practical suggestions for further investigation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A shareable report:&lt;/strong&gt; A concise Markdown incident brief for documentation and handoffs.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The core idea is simple: analysts should not have to read every line of a log file before understanding where to start.&lt;/p&gt;

&lt;p&gt;QuietSOC is currently a proposed project design, not a completed or tested application. The features above describe the intended functionality rather than verified capabilities.&lt;/p&gt;

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

&lt;p&gt;A working demo is not available yet. The concept is to demonstrate a suspicious authentication sequence being uploaded, analyzed, and transformed into an evidence-backed incident briefing.&lt;/p&gt;

&lt;p&gt;The planned demo would show the original events, the detection results, the AI explanation, and the final report in one workflow.&lt;/p&gt;

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

&lt;p&gt;The implementation has not yet been created, so there is no project repository to share at this stage.&lt;/p&gt;

&lt;p&gt;The planned architecture uses Python, FastAPI, HTML, CSS, JavaScript, and local inference through Ollama.&lt;/p&gt;

&lt;h2&gt;
  
  
  How I Would Build It
&lt;/h2&gt;

&lt;p&gt;The design separates security detection from AI-generated explanations.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Parse the logs&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Python would normalize supported log formats into structured events containing timestamps, event identifiers, usernames, source addresses, and authentication outcomes where available.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Detect suspicious patterns&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Deterministic Python rules would identify patterns such as repeated authentication failures and a successful login following a sequence of failures. These would be investigation signals, not automatic proof of an attack.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Explain the evidence with local AI&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;An open-weight model would receive a carefully selected set of relevant events and produce a structured explanation. Its output would need to reference the available evidence and acknowledge uncertainty rather than invent missing facts.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Present an investigation brief&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A FastAPI backend and lightweight web interface would display the findings, event timeline, supporting evidence, severity assessment, and recommended next steps.&lt;/p&gt;

&lt;p&gt;The proposed model is Gemma 3 running locally through Ollama. It has not yet been integrated or tested in this project.&lt;/p&gt;

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

&lt;p&gt;Security logs can contain sensitive operational information, usernames, internal addresses, and details about an organization's infrastructure. Sending such data to an external AI service may create privacy, compliance, or confidentiality concerns.&lt;/p&gt;

&lt;p&gt;Open-weight models and local inference offer an alternative: organizations can explore AI-assisted workflows while retaining greater control over where their data is processed.&lt;/p&gt;

&lt;p&gt;Open innovation also makes it possible for developers to inspect the surrounding implementation, adapt detection rules, evaluate model behavior, and build on publicly available tools rather than relying entirely on a proprietary service.&lt;/p&gt;

&lt;p&gt;For a project like QuietSOC, transparency is particularly important. An AI-generated explanation should never replace the original evidence or become the sole basis for a security decision.&lt;/p&gt;

&lt;p&gt;The long-term vision is an approachable, extensible assistant that helps junior analysts learn from their investigations while keeping the human analyst in control.&lt;/p&gt;

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

&lt;p&gt;No DevRelay agent session is available for this concept.&lt;/p&gt;

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

&lt;p&gt;The intended benefit is to reduce the repetitive effort involved in manually reviewing authentication events, assembling a timeline, and writing an initial incident summary.&lt;/p&gt;

&lt;p&gt;However, no time-saving measurements or user tests are available because the application has not been implemented.&lt;/p&gt;

&lt;p&gt;A future evaluation would compare the time required to investigate the same synthetic log dataset manually versus with QuietSOC, while checking whether the generated findings remain accurate and traceable.&lt;/p&gt;

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

&lt;p&gt;No partner-category entry is being claimed at this stage. The proposed use of Gemma would need to be implemented and demonstrated before a Best Use of Gemma entry could be substantiated.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Final thought&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;QuietSOC began with a practical question: what if a junior SOC analyst could spend less time searching through repetitive logs and more time understanding the evidence?&lt;/p&gt;

&lt;p&gt;The idea is to use open AI as an assistant to the investigation—not as a replacement for detection logic, evidence, or human judgment.&lt;/p&gt;

&lt;p&gt;The next step is to turn this concept into a working, testable tool.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>ScamShield: I Built a Local AI Scam Detector for Freelancers</title>
      <dc:creator>Akash Jha</dc:creator>
      <pubDate>Mon, 19 Oct 2026 03:21:34 +0000</pubDate>
      <link>https://dev.to/akashjha518/scamshield-i-built-a-local-ai-scam-detector-for-freelancers-ek1</link>
      <guid>https://dev.to/akashjha518/scamshield-i-built-a-local-ai-scam-detector-for-freelancers-ek1</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;h1&gt;
  
  
  ScamShield: I Built a Local AI Scam Detector for Freelancers
&lt;/h1&gt;

&lt;p&gt;Freelancing offers flexibility, but finding legitimate clients isn't always easy.&lt;/p&gt;

&lt;p&gt;A job offer might look professional while asking for an upfront registration fee. A client might request an unusual payment transfer. Sometimes, the warning signs are subtle enough that a new freelancer doesn't know what to look for.&lt;/p&gt;

&lt;p&gt;I wanted to build something practical to help freelancers pause, identify warning signs, and make more informed decisions before accepting an offer.&lt;/p&gt;

&lt;p&gt;That's why I built &lt;strong&gt;ScamShield&lt;/strong&gt;, a local AI-assisted freelance scam screening tool.&lt;/p&gt;

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

&lt;p&gt;ScamShield lets users paste a freelance job offer, client message, or payment request and receive a structured analysis.&lt;/p&gt;

&lt;p&gt;The current MVP includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Risk classification:&lt;/strong&gt; LOW, MEDIUM, HIGH, or CRITICAL.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Risk scoring:&lt;/strong&gt; A score from 0 to 100 based on detected warning signs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Evidence-based findings:&lt;/strong&gt; Matched text excerpts, rule identifiers, severity levels, and explanations.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AI explanations:&lt;/strong&gt; Additional context generated by a locally running Qwen3 model.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Missing information:&lt;/strong&gt; Details that the message doesn't establish, such as contract terms or independently verifiable company information.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Recommended next steps:&lt;/strong&gt; Practical suggestions based on the detected indicators.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A web interface:&lt;/strong&gt; A responsive frontend with example messages, character counting, and a structured analysis report.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The goal isn't to declare every suspicious message fraudulent. It's to help users understand what deserves closer inspection.&lt;/p&gt;

&lt;h2&gt;
  
  
  How it works
&lt;/h2&gt;

&lt;p&gt;The most important architectural decision was to keep risk assessment separate from AI-generated explanations.&lt;/p&gt;

&lt;p&gt;Here's the basic flow:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;A user submits a message through the web interface.&lt;/li&gt;
&lt;li&gt;The FastAPI backend validates the input.&lt;/li&gt;
&lt;li&gt;A deterministic Python rules engine searches for known warning signs.&lt;/li&gt;
&lt;li&gt;The engine calculates the risk score and classification.&lt;/li&gt;
&lt;li&gt;If findings exist, the optional local AI component explains those existing findings.&lt;/li&gt;
&lt;li&gt;The frontend displays the evidence, score, recommendations, and AI explanation.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The AI model does not determine the risk score, invent verified findings, or change the original severity ratings.&lt;/p&gt;

&lt;p&gt;This separation makes the output easier to inspect and test.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why open-source AI matters here
&lt;/h2&gt;

&lt;p&gt;ScamShield uses &lt;strong&gt;Qwen3 4B through Ollama&lt;/strong&gt;, allowing the explanation model to run locally instead of depending on a hosted AI API.&lt;/p&gt;

&lt;p&gt;That matters for a tool that handles potentially sensitive client messages and job offers.&lt;/p&gt;

&lt;p&gt;A local-first approach offers several advantages:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Privacy:&lt;/strong&gt; Message content can remain on the user's machine during local analysis.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Control:&lt;/strong&gt; The model can be replaced or reconfigured without redesigning the entire application.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Accessibility:&lt;/strong&gt; Users can experiment without requiring a paid hosted-model API.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Transparency:&lt;/strong&gt; Deterministic rules remain responsible for risk scoring, while AI provides supplementary explanations.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Local inference still requires suitable hardware and the model must be downloaded first. Running locally does not automatically make every component secure, but it gives users more control over where their data is processed.&lt;/p&gt;

&lt;h2&gt;
  
  
  Technology stack
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Backend:&lt;/strong&gt; Python, FastAPI, Pydantic&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Frontend:&lt;/strong&gt; HTML, CSS, JavaScript&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AI inference:&lt;/strong&gt; Ollama with Qwen3 4B&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Testing:&lt;/strong&gt; pytest, FastAPI TestClient, mocked AI responses&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Development environment:&lt;/strong&gt; Local Windows environment&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Testing and reliability
&lt;/h2&gt;

&lt;p&gt;I implemented automated tests for the rule-based analyzer, API endpoints, and Ollama client.&lt;/p&gt;

&lt;p&gt;The latest full test run completed with &lt;strong&gt;29 tests passing&lt;/strong&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%2Fw3tw7r9dzvlmqwcb7qob.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%2Fw3tw7r9dzvlmqwcb7qob.png" alt=" " width="800" height="929"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The tests cover input validation, risk classification, finding validation, malformed model responses, timeouts, HTTP errors, and preservation of the original findings. API tests also cover successful AI explanations, fallback behavior when Ollama fails, and skipping AI calls when no findings exist.&lt;/p&gt;

&lt;p&gt;These tests verify expected application behavior; they are not proof that the tool can detect every type of scam.&lt;/p&gt;

&lt;h2&gt;
  
  
  Who could use it?
&lt;/h2&gt;

&lt;p&gt;ScamShield is designed for freelancers, students looking for their first remote opportunity, and independent contractors who regularly receive unfamiliar job offers.&lt;/p&gt;

&lt;p&gt;A future version could include configurable detection rules, additional message patterns, and more comprehensive evaluation against a curated collection of legitimate and suspicious offers.&lt;/p&gt;

&lt;p&gt;For now, it is an MVP demonstrating how deterministic security checks and local AI explanations can work together.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try the project
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;GitHub repository:&lt;/strong&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/akashjha518" rel="noopener noreferrer"&gt;
        akashjha518
      &lt;/a&gt; / &lt;a href="https://github.com/akashjha518/ScamShield" rel="noopener noreferrer"&gt;
        ScamShield
      &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;ScamShield 🛡️&lt;/h1&gt;
&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;Protect Your Freelance Journey. Spot Scams Before They Strike.&lt;/h3&gt;
&lt;/div&gt;
&lt;p&gt;ScamShield is an open-source, AI-assisted screening tool that helps freelancers assess suspicious job offers, client messages, and payment requests before responding. It looks for warning signs, shows the evidence behind its assessment, and suggests practical next steps.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Important:&lt;/strong&gt; ScamShield is a decision-support tool, not a guarantee that a message is safe or fraudulent. Always verify clients and companies independently.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Contents&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/akashjha518/ScamShield#why-scamshield" rel="noopener noreferrer"&gt;Why ScamShield?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/akashjha518/ScamShield#features" rel="noopener noreferrer"&gt;Features&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/akashjha518/ScamShield#how-it-works" rel="noopener noreferrer"&gt;How It Works&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/akashjha518/ScamShield#technology-stack" rel="noopener noreferrer"&gt;Technology Stack&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/akashjha518/ScamShield#project-structure" rel="noopener noreferrer"&gt;Project Structure&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/akashjha518/ScamShield#requirements" rel="noopener noreferrer"&gt;Requirements&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/akashjha518/ScamShield#installation-and-setup" rel="noopener noreferrer"&gt;Installation and Setup&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/akashjha518/ScamShield#run-the-application" rel="noopener noreferrer"&gt;Run the Application&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/akashjha518/ScamShield#run-the-tests" rel="noopener noreferrer"&gt;Run the Tests&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/akashjha518/ScamShield#example-scenarios" rel="noopener noreferrer"&gt;Example Scenarios&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/akashjha518/ScamShield#ai-privacy-and-limitations" rel="noopener noreferrer"&gt;AI, Privacy, and Limitations&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/akashjha518/ScamShield#roadmap" rel="noopener noreferrer"&gt;Roadmap&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/akashjha518/ScamShield#contributing" rel="noopener noreferrer"&gt;Contributing&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/akashjha518/ScamShield#license" rel="noopener noreferrer"&gt;License&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Why ScamShield?&lt;/h2&gt;

&lt;/div&gt;

&lt;p&gt;Freelancers and people starting their careers can encounter fake job offers, upfront registration fees, suspicious payment requests, impersonation, and pressure to share sensitive information. These messages can be difficult to evaluate, especially for people who are new to freelance work.&lt;/p&gt;

&lt;p&gt;ScamShield makes the assessment more understandable by surfacing…&lt;/p&gt;&lt;/div&gt;


&lt;/div&gt;
&lt;br&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/akashjha518/ScamShield" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;
&lt;/div&gt;

&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;To run the project locally, install the Python dependencies, start the FastAPI backend, and serve the frontend. For AI explanations, install Ollama, download the configured Qwen3 model, and make sure the local Ollama service is running.&lt;/p&gt;

&lt;p&gt;The project is still under development. Its findings depend on the available detection rules, and a low score does not establish that an offer is safe.&lt;/p&gt;

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

&lt;p&gt;Building ScamShield taught me that adding an AI model isn't the same as building a reliable AI-assisted application.&lt;/p&gt;

&lt;p&gt;The surrounding system matters: input validation, structured outputs, error handling, tests, and clear limitations all influence whether users can trust what they see.&lt;/p&gt;

&lt;p&gt;My biggest takeaway is that &lt;strong&gt;AI should help explain security evidence, not replace the logic responsible for establishing it.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That is the principle I want to continue following as ScamShield grows.&lt;/p&gt;

&lt;h1&gt;
  
  
  Conclusion
&lt;/h1&gt;

&lt;p&gt;ScamShield is my attempt to turn a real problem faced by freelancers into a practical, locally runnable cybersecurity tool.&lt;/p&gt;

&lt;p&gt;By combining deterministic detection with open-weight AI, it aims to make suspicious freelance offers easier to understand without requiring users to send their messages to a hosted AI service.&lt;/p&gt;

&lt;p&gt;This is an early version, not a definitive scam detector. But it's a working foundation that I can test, improve, and develop further.&lt;/p&gt;

&lt;p&gt;Thanks for reading!&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>🌿 CyberEscape: What If Your Next Cybersecurity Lab Was a Walk Outside?</title>
      <dc:creator>Akash Jha</dc:creator>
      <pubDate>Mon, 12 Oct 2026 05:10:04 +0000</pubDate>
      <link>https://dev.to/akashjha518/cyberescape-what-if-your-next-cybersecurity-lab-was-a-walk-outside-4k2n</link>
      <guid>https://dev.to/akashjha518/cyberescape-what-if-your-next-cybersecurity-lab-was-a-walk-outside-4k2n</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;&lt;strong&gt;CyberEscape 🌿🔐 — Walk. Observe. Think like a defender.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;What if learning cybersecurity didn't always mean sitting in front of a screen?&lt;/p&gt;

&lt;p&gt;As someone learning and building in cybersecurity, I spend a lot of time working with virtual machines, terminals, networking tools, and security labs. These are essential for developing technical skills, but I wanted to explore another way of learning security concepts—one that connects everyday experiences with defensive thinking.&lt;/p&gt;

&lt;p&gt;That's the idea behind &lt;strong&gt;CyberEscape&lt;/strong&gt;, an AI-powered outdoor cybersecurity learning experience built for the Hacktoberfest 2026 Touch Grass challenge.&lt;/p&gt;

&lt;p&gt;CyberEscape turns an ordinary walk into a safe, interactive cybersecurity mission. Instead of spending the entire experience looking at a screen, users receive a mission, put their phones away, observe their surroundings respectfully, and return to reflect on what they learned.&lt;/p&gt;

&lt;p&gt;Here's how it works:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Choose a mission:&lt;/strong&gt; Select a duration, difficulty level, and cybersecurity topic.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Generate with AI:&lt;/strong&gt; Local AI creates an educational outdoor observation mission based on the selected preferences.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Step outside:&lt;/strong&gt; Read the instructions, put the phone away, and observe your surroundings without interacting with people or testing real security controls.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reflect:&lt;/strong&gt; Return to the application and explain the cybersecurity principle, its potential impact, and a possible defensive improvement.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Learn and progress:&lt;/strong&gt; AI analyzes the reflection and provides educational feedback and defensive recommendations. Successful reflections earn 10 XP, while mission progress and history are stored in browser localStorage.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;CyberEscape currently covers five topics:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;🔐 Physical Security&lt;/li&gt;
&lt;li&gt;🕵️ Privacy &amp;amp; Exposure&lt;/li&gt;
&lt;li&gt;🎭 Social Engineering&lt;/li&gt;
&lt;li&gt;🛡️ Defensive Thinking&lt;/li&gt;
&lt;li&gt;🌐 Network Security Awareness&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The idea isn't to replace hands-on cybersecurity labs. It's to complement them with a different kind of learning experience.&lt;/p&gt;

&lt;p&gt;A traditional lab asks you to investigate a technical environment. CyberEscape encourages you to connect security principles with everyday situations, think about why they matter, and consider how a defender could reduce potential risks.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The screen starts the mission. The real world provides the observation. Reflection turns it into a learning experience.&lt;/strong&gt;&lt;/p&gt;

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

&lt;p&gt;The best way to understand CyberEscape is to see its actual workflow.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Application screenshots&lt;/strong&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%2Fo1dulr7hjiogs2h4unyu.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%2Fo1dulr7hjiogs2h4unyu.png" alt="CyberEscape application home screen" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;The CyberEscape interface and mission progress.&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%2Fiktzkye8eblm3re9tnxo.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%2Fiktzkye8eblm3re9tnxo.png" alt="CyberEscape mission generation" width="800" height="438"&gt;&lt;/a&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%2F1w6v717yks83mwn8am1c.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%2F1w6v717yks83mwn8am1c.png" alt="CyberEscape mission generated" width="800" height="440"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Configuring a mission and receiving AI-generated instructions.&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%2Fb9idhsp7mhiqyof7e94j.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%2Fb9idhsp7mhiqyof7e94j.png" alt="CyberEscape reflection submission" width="800" height="478"&gt;&lt;/a&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%2Fhwfcnhmohruz3616bfd5.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%2Fhwfcnhmohruz3616bfd5.png" alt="CyberEscape reflection feedback" width="799" height="482"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Submitting a reflection and reviewing AI-generated feedback.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🎬 Video demonstration:&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/9m_CO4qee3c" width="710" height="399"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;The demo should show the actual application in action: selecting a mission, generating instructions, submitting a reflection, receiving feedback, and viewing the resulting progress.&lt;/p&gt;

&lt;p&gt;These screenshots and the recording should come from the working MVP rather than mockups.&lt;/p&gt;

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

&lt;p&gt;🔗 &lt;strong&gt;GitHub repository:&lt;/strong&gt; &lt;a href="https://github.com/akashjha518/CyberScape" rel="noopener noreferrer"&gt;https://github.com/akashjha518/CyberScape&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The repository contains the CyberEscape implementation and project documentation.&lt;/p&gt;

&lt;p&gt;The project is built around a simple idea: combine an accessible web interface with local AI to create a learning experience that encourages people to spend less time looking at their screens.&lt;/p&gt;

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

&lt;p&gt;CyberEscape is a full-stack application built with React, Python, FastAPI, and a locally running open-weight AI model.&lt;/p&gt;

&lt;h3&gt;
  
  
  Technology stack
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Technology&lt;/th&gt;
&lt;th&gt;Role in CyberEscape&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;React&lt;/td&gt;
&lt;td&gt;Builds the interactive user interface&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Vite&lt;/td&gt;
&lt;td&gt;Frontend development and build tooling&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CSS&lt;/td&gt;
&lt;td&gt;Application styling&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Python&lt;/td&gt;
&lt;td&gt;Backend implementation&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;FastAPI&lt;/td&gt;
&lt;td&gt;API layer connecting the frontend to the application workflow&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Pydantic&lt;/td&gt;
&lt;td&gt;Validation of structured API data&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Ollama&lt;/td&gt;
&lt;td&gt;Runs the AI model locally&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Gemma 3 4B (&lt;code&gt;gemma3:4b&lt;/code&gt;)&lt;/td&gt;
&lt;td&gt;Generates missions and analyzes reflections&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Browser localStorage&lt;/td&gt;
&lt;td&gt;Stores mission history and progress&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  1. Mission generation
&lt;/h3&gt;

&lt;p&gt;The learner selects the duration, difficulty, and cybersecurity topic. The frontend sends the relevant configuration through the backend workflow, where the local AI model generates an educational mission.&lt;/p&gt;

&lt;p&gt;This is where AI makes the experience more adaptable than a fixed collection of lessons. Mission content can be generated according to the learner's selected preferences rather than requiring every learner to follow identical instructions.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Reflection and AI feedback
&lt;/h3&gt;

&lt;p&gt;After completing the outdoor observation activity, the learner returns and submits a reflection.&lt;/p&gt;

&lt;p&gt;The AI analyzes the explanation and provides feedback and defensive recommendations. This encourages the learner to move beyond simply noticing something and consider the underlying security principle, its potential impact, and possible mitigation.&lt;/p&gt;

&lt;p&gt;The model provides educational guidance; its output should not be treated as a guarantee of security correctness.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Local AI with Ollama and Gemma 3 4B
&lt;/h3&gt;

&lt;p&gt;CyberEscape uses Gemma 3 4B through Ollama for mission generation and reflection analysis.&lt;/p&gt;

&lt;p&gt;I chose a local inference approach because it fits the project's educational and privacy-conscious goals. The application can run these AI interactions on the user's machine when the required model and runtime are installed and configured.&lt;/p&gt;

&lt;p&gt;This also gives the project a practical way to experiment with open-weight AI without depending exclusively on a hosted commercial AI API.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Progress tracking
&lt;/h3&gt;

&lt;p&gt;The application stores mission history and progress in browser localStorage. Successful reflections earn 10 XP, giving learners a lightweight way to track their progress without requiring a separate account system in this MVP.&lt;/p&gt;

&lt;p&gt;The result is a connected learning loop: configure, generate, observe, reflect, receive feedback, and track progress.&lt;/p&gt;

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

&lt;p&gt;For CyberEscape, open innovation matters because it gives me greater flexibility in how the AI component is run, explored, and integrated into the learning experience.&lt;/p&gt;

&lt;h3&gt;
  
  
  Local inference and user control
&lt;/h3&gt;

&lt;p&gt;Ollama and Gemma 3 4B allow the AI model to run locally on a user's machine, subject to hardware and setup requirements.&lt;/p&gt;

&lt;p&gt;This is particularly relevant for an application that processes written reflections. In the intended local setup, mission and reflection processing can take place without sending that content to a hosted commercial AI inference API.&lt;/p&gt;

&lt;p&gt;Local inference alone does not guarantee complete application privacy or offline operation. Other network requests and data-storage behavior still matter, and browser localStorage is not encrypted storage.&lt;/p&gt;

&lt;h3&gt;
  
  
  Experimentation with open-weight AI
&lt;/h3&gt;

&lt;p&gt;Using an open-weight model makes it possible to investigate the AI workflow more directly, experiment with prompts, evaluate model behavior, and explore alternatives without building the entire experience around a single hosted model endpoint.&lt;/p&gt;

&lt;p&gt;It also makes the AI component a useful learning opportunity in its own right. Developers can examine how the model fits into the application and understand how AI-generated content is incorporated into a practical workflow.&lt;/p&gt;

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

&lt;p&gt;Gemma 3 4B is central to CyberEscape's two AI-powered activities: creating outdoor missions and analyzing learner reflections.&lt;/p&gt;

&lt;p&gt;The model is not included merely to add an AI label to the project. Its role is to help personalize the mission experience and provide feedback after the learner returns.&lt;/p&gt;

&lt;p&gt;Open-weight AI made this implementation approach possible while keeping local inference at the center of the design.&lt;/p&gt;

&lt;h3&gt;
  
  
  Safety by design
&lt;/h3&gt;

&lt;p&gt;CyberEscape is an educational awareness tool, not a security-audit application.&lt;/p&gt;

&lt;p&gt;Its missions do not ask learners to trespass, test real access controls, interact with strangers, collect personal information, photograph people, or scan and investigate real networks.&lt;/p&gt;

&lt;p&gt;The outdoor activity is intended to involve respectful observation and defensive reasoning. Learners put their phones away during the mission and return to the application for reflection.&lt;/p&gt;

&lt;p&gt;I wanted the experience to encourage security awareness without turning public spaces or other people into targets for experimentation.&lt;/p&gt;

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

&lt;p&gt;The official challenge template makes this section optional.&lt;/p&gt;

&lt;p&gt;[Add your DevRelay agent session link here if you have a relevant session to share.]&lt;/p&gt;

&lt;p&gt;If no suitable session has been saved, this section can be removed before publication. I don't want to present an unavailable session or invent an agent workflow that wasn't documented.&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Best Use of Gemma&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;CyberEscape uses Gemma 3 4B through Ollama for its AI-powered mission-generation and reflection-analysis workflows.&lt;/p&gt;

&lt;p&gt;This category is relevant because Gemma is part of the actual implementation rather than a technology mentioned only in the project description.&lt;/p&gt;

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

&lt;p&gt;CyberEscape started with a simple question: can cybersecurity learning encourage people to step away from their screens without losing the practical thinking that makes security education valuable?&lt;/p&gt;

&lt;p&gt;My answer was to build a small, working MVP that combines AI-generated missions, outdoor observation, reflection, feedback, and progress tracking.&lt;/p&gt;

&lt;p&gt;It doesn't replace technical labs, SIEM investigations, packet analysis, or hands-on defensive security practice. Instead, it explores another way to develop awareness and connect security principles with everyday experiences.&lt;/p&gt;

&lt;p&gt;Building this project also reminded me that AI is most useful when it serves a clear purpose. In CyberEscape, AI generates the learning activity and helps interpret the reflection, while the learner remains responsible for observing, thinking, and explaining.&lt;/p&gt;

&lt;p&gt;For me, that's the most interesting part of the project: technology helps create an experience that deliberately asks the user to put technology aside for a while.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CyberEscape 🌿🔐 — Walk. Observe. Think like a defender.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;🔗 Explore the project: &lt;a href="https://github.com/akashjha518/CyberScape" rel="noopener noreferrer"&gt;CyberEscape on GitHub&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I'd love to hear how other developers are using open-source AI to make learning more practical, engaging, and connected to the world outside the screen.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
      <category>pgaichallenge</category>
      <category>cybersecurity</category>
    </item>
    <item>
      <title>I Built CyberBuddy: A Local AI Cybersecurity Assistant for Non-Technical Users</title>
      <dc:creator>Akash Jha</dc:creator>
      <pubDate>Mon, 05 Oct 2026 06:14:42 +0000</pubDate>
      <link>https://dev.to/akashjha518/i-built-cyberbuddy-a-local-ai-cybersecurity-assistant-for-non-technical-users-5028</link>
      <guid>https://dev.to/akashjha518/i-built-cyberbuddy-a-local-ai-cybersecurity-assistant-for-non-technical-users-5028</guid>
      <description>&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%2Fkg0wr4ytwcu97wqgsc78.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%2Fkg0wr4ytwcu97wqgsc78.png" alt="CyberBuddy analyzing a suspicious phishing message with AI-powered risk assessment and security guidance." width="800" height="450"&gt;&lt;/a&gt;&lt;br&gt;
Have you ever received a message saying:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"URGENT! Your bank account will be blocked. Verify your account immediately."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Or clicked a link and wondered:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Is this website actually safe?"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;For someone with a cybersecurity background, these messages can contain obvious warning signs. But for a non-technical person, understanding those warning signs isn't always easy.&lt;br&gt;
That's the problem I wanted to solve with CyberBuddy.&lt;br&gt;
CyberBuddy is a local AI-powered cybersecurity assistant that helps non-technical users understand suspicious messages and URLs and decide what they should do next.&lt;br&gt;
This project was built for the Hacktoberfest Weekend Challenge: Build for a Friend.&lt;/p&gt;
&lt;h2&gt;
  
  
  The Problem
&lt;/h2&gt;

&lt;p&gt;Cybersecurity advice is often written for technical users.&lt;br&gt;
Terms like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;phishing&lt;/li&gt;
&lt;li&gt;credential harvesting&lt;/li&gt;
&lt;li&gt;suspicious indicators&lt;/li&gt;
&lt;li&gt;malicious URLs&lt;/li&gt;
&lt;li&gt;account takeover&lt;/li&gt;
&lt;li&gt;social engineering&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;can be confusing to someone who doesn't work in cybersecurity.&lt;/p&gt;

&lt;p&gt;A person receiving a suspicious message doesn't necessarily need a complicated security report.&lt;br&gt;
They need answers to simple questions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Is this suspicious?&lt;/li&gt;
&lt;li&gt;Why does it look suspicious?&lt;/li&gt;
&lt;li&gt;What should I avoid doing?&lt;/li&gt;
&lt;li&gt;What should I do next?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That's where CyberBuddy comes in.&lt;/p&gt;
&lt;h2&gt;
  
  
  Meet CyberBuddy
&lt;/h2&gt;

&lt;p&gt;CyberBuddy is designed around a simple idea:&lt;br&gt;
Give people understandable security guidance without requiring them to understand cybersecurity terminology.&lt;/p&gt;

&lt;p&gt;The current MVP supports two types of analysis:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Suspicious Message Analyzer&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A user can paste a suspicious email or message.&lt;br&gt;
For example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;URGENT! Your bank account will be blocked.
Please provide your OTP immediately at
https://example.com/login
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;CyberBuddy analyzes the message and identifies indicators such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;urgent or pressure-based language&lt;/li&gt;
&lt;li&gt;credential requests&lt;/li&gt;
&lt;li&gt;financial information requests&lt;/li&gt;
&lt;li&gt;account access threats&lt;/li&gt;
&lt;li&gt;URLs&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It then calculates a risk level and score.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Suspicious URL Analyzer&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Users can also enter a URL directly.&lt;br&gt;
For example:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;http://192.168.1.10/login
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;CyberBuddy can identify indicators such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;HTTP instead of HTTPS&lt;/li&gt;
&lt;li&gt;IP address used instead of a domain&lt;/li&gt;
&lt;li&gt;security-sensitive keywords such as login&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The URL is then assigned a risk score based on the detected indicators.&lt;/p&gt;
&lt;h2&gt;
  
  
  How CyberBuddy Works
&lt;/h2&gt;

&lt;p&gt;One of the most important design decisions I made was to separate security analysis from AI explanation.&lt;br&gt;
The architecture looks like this:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;              User Input
                  │
                  ▼
        ┌─────────────────────┐
        │ Deterministic       │
        │ Security Analysis   │
        └──────────┬──────────┘
                   │
                   ▼
        ┌─────────────────────┐
        │ Evidence Detection  │
        └──────────┬──────────┘
                   │
                   ▼
        ┌─────────────────────┐
        │ Risk Assessment     │
        │ + Risk Score        │
        └──────────┬──────────┘
                   │
                   ▼
        ┌─────────────────────┐
        │ Gemma 3 4B          │
        │ Local AI            │
        └──────────┬──────────┘
                   │
                   ▼
        ┌─────────────────────┐
        │ Simple Explanation  │
        │ + Safe Actions      │
        └─────────────────────┘
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;The important part is:&lt;br&gt;
Gemma does not decide the security risk.&lt;/p&gt;

&lt;p&gt;The deterministic CyberBuddy analyzers and risk engines are responsible for detecting indicators and calculating the risk.&lt;br&gt;
Gemma receives that existing analysis and explains it in simple language.&lt;br&gt;
This makes the AI an explanation layer, rather than the authority making the security decision.&lt;/p&gt;
&lt;h2&gt;
  
  
  Why I Used Gemma 3 4B
&lt;/h2&gt;

&lt;p&gt;For the AI component, I chose Gemma 3 4B running locally through Ollama.&lt;br&gt;
The reason was simple: I wanted CyberBuddy's AI functionality to work locally without requiring an external API key.&lt;/p&gt;

&lt;p&gt;The setup is:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;CyberBuddy
     │
     ▼
Ollama
     │
     ▼
Gemma 3 4B
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Gemma receives the structured security analysis generated by CyberBuddy.&lt;br&gt;
For example:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Risk: CRITICAL
Risk Score: 95
Possible Attack: Phishing

Indicators:
- Urgent language
- Credential request
- Account access threat
- Suspicious URL
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Gemma then turns that technical information into something a normal user can understand.&lt;br&gt;
For example:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;This message is highly suspicious because it creates urgency, requests sensitive information, and threatens account access. Do not click the link or provide your OTP or password.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The model runs locally, so the AI explanation doesn't require sending the analysis to a third-party AI API.&lt;/p&gt;
&lt;h2&gt;
  
  
  Example: Message Analysis
&lt;/h2&gt;

&lt;p&gt;Here's an example of the message analyzer detecting a phishing-style message.&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%2Fv7uas13ujmn99v9qquvf.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%2Fv7uas13ujmn99v9qquvf.png" alt="CyberBuddy analyzing a suspicious message and detecting a critical phishing risk." width="800" height="465"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;URGENT! Your bank account will be blocked.
Please provide your OTP immediately at
https://example.com/login
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;CyberBuddy produced:&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%2Fjja6x0tzs9cwu2b3be0n.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%2Fjja6x0tzs9cwu2b3be0n.png" alt="CyberBuddy detecting a critical phishing risk with AI-powered security analysis and safe-action guidance." width="800" height="465"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Risk: CRITICAL
Risk Score: 95/100
Possible Attack: Phishing
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;It also detected multiple indicators:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Urgent or pressure-based language
Credential or verification information requested
Financial or payment information requested
Account access threat detected
URL detected
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;The recommended actions include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Don't click the link until it has been verified.&lt;/li&gt;
&lt;li&gt;Don't provide passwords, OTPs, PINs, or verification codes.&lt;/li&gt;
&lt;li&gt;Don't share banking or card information.&lt;/li&gt;
&lt;li&gt;Verify the warning through the organization's official website or application.
Gemma then explains these findings in simple language.&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%2Flld2y2h2pogvzzhpquxs.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%2Flld2y2h2pogvzzhpquxs.png" alt="CyberBuddy AI explaining a critical phishing risk and providing safe, practical guidance.” dev-to-uploads.s3.us-east-2.amazonaws.com" width="800" height="465"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Example: URL Analysis
&lt;/h2&gt;

&lt;p&gt;CyberBuddy can also analyze a URL independently.&lt;br&gt;
For example:&lt;br&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%2Fpj89z4mx6jezqy2nc7lv.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%2Fpj89z4mx6jezqy2nc7lv.png" alt="CyberBuddy analyzing a suspicious URL and identifying a medium security risk." width="800" height="465"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;http://192.168.1.10/login
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;The result was:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Risk: MEDIUM
Risk Score: 40/100

Hostname: 192.168.1.10
Protocol: HTTP
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Detected indicators:&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%2Fxo93in6qmmb33pc9mqy4.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%2Fxo93in6qmmb33pc9mqy4.png" alt="CyberBuddy AI explaining a medium-risk URL and its detected security indicators" width="800" height="465"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;URL does not use HTTPS
IP address used instead of a domain name
Security-sensitive keyword detected: login
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Gemma then explains why these indicators matter and provides practical guidance.&lt;br&gt;
The goal isn't to tell the user:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"This website is definitely malicious."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Instead, CyberBuddy explains:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"These indicators suggest that the website may not be trustworthy. Be cautious and avoid entering sensitive information until the website has been independently verified."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That's an important distinction.&lt;/p&gt;
&lt;h2&gt;
  
  
  Fail-Safe AI Design
&lt;/h2&gt;

&lt;p&gt;Another design decision was making the AI component optional.&lt;br&gt;
If Ollama isn't running, CyberBuddy's deterministic analysis should still work.&lt;br&gt;
The architecture therefore behaves like this:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Ollama available
       │
       ▼
Risk Analysis → Gemma → Explanation
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;But if Ollama is unavailable:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Ollama unavailable
       │
       ▼
Risk Analysis → Normal Result
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;The application doesn't depend entirely on the AI model to function.&lt;br&gt;
This also keeps the security analysis predictable.&lt;/p&gt;
&lt;h2&gt;
  
  
  Technology Stack
&lt;/h2&gt;

&lt;p&gt;CyberBuddy currently uses:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Python
FastAPI
JavaScript
HTML
CSS
Ollama
Gemma 3 4B
Pytest
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;&lt;strong&gt;Backend&lt;/strong&gt;&lt;br&gt;
The backend is built with FastAPI.&lt;br&gt;
It provides endpoints for:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;POST /api/analyze/message
POST /api/analyze/url
GET  /health
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;&lt;strong&gt;Frontend&lt;/strong&gt;&lt;br&gt;
The frontend is a lightweight HTML/CSS/JavaScript interface.&lt;br&gt;
Users can switch between:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Message
URL
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;and receive the analysis directly in the browser.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Testing&lt;/strong&gt;&lt;br&gt;
The project currently has automated tests covering:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;message analysis&lt;/li&gt;
&lt;li&gt;message risk engine&lt;/li&gt;
&lt;li&gt;URL analysis&lt;/li&gt;
&lt;li&gt;URL risk engine
Current test result:
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;=============================== test session starts ================================
platform win32 -- Python 3.10.11, pytest-9.1.1, pluggy-1.6.0
rootdir: B:\Hacktoberfest\Cyberbuddy
plugins: anyio-4.15.1
collected 39 items                                                                  

tests\test_message_analyzer.py ..............                                 [ 35%]
tests\test_risk_engine.py .....                                               [ 48%]
tests\test_url_analyzer.py ..............                                     [ 84%]
tests\test_url_risk_engine.py ......                                          [100%]

================================ 39 passed in 0.15s ================================
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h2&gt;
  
  
  Building for a Non-Technical User
&lt;/h2&gt;

&lt;p&gt;The most important part of this project wasn't just adding AI.&lt;/p&gt;

&lt;p&gt;It was thinking about how a non-technical person would use it.&lt;/p&gt;

&lt;p&gt;A security tool can detect dozens of technical indicators, but displaying all of them without context doesn't necessarily help someone.&lt;/p&gt;

&lt;p&gt;CyberBuddy therefore tries to translate:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Technical Evidence
       ↓
Simple Explanation
       ↓
Practical Action
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;For example:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Credential request detected
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;becomes:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"The message is asking for sensitive information such as a password or OTP. Legitimate organizations generally shouldn't ask you to provide these through suspicious links or messages."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The goal is to make security guidance easier to understand and act upon.&lt;/p&gt;
&lt;h2&gt;
  
  
  What I Learned
&lt;/h2&gt;

&lt;p&gt;Building CyberBuddy taught me several things beyond simply connecting an AI model to an application.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. AI shouldn't always be the decision-maker&lt;/strong&gt;&lt;br&gt;
For security-related applications, deterministic rules can provide a predictable foundation while AI can make the results easier to understand.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Local AI is practical&lt;/strong&gt;&lt;br&gt;
Running Gemma through Ollama made it possible to add an AI explanation layer without requiring an external API.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. User experience matters&lt;/strong&gt;&lt;br&gt;
A technically accurate security result isn't enough if the person using the application doesn't understand what it means.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Testing matters even for small projects&lt;/strong&gt;&lt;br&gt;
The project currently has:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;39 automated tests
39 passing
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;This helped me make changes while ensuring the existing analyzers continued to work.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5. Building for a real person changes how you think&lt;/strong&gt;&lt;br&gt;
Instead of asking:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"What cybersecurity feature can I add?"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;I started asking:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"What would actually help someone when they receive a suspicious message?"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That changed the direction of the project.&lt;/p&gt;
&lt;h2&gt;
  
  
  What's Next?
&lt;/h2&gt;

&lt;p&gt;CyberBuddy is currently an MVP, so there is plenty of room for improvement.&lt;br&gt;
Some things I'd like to explore next:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Security alert/log analysis&lt;/li&gt;
&lt;li&gt;More sophisticated URL detection&lt;/li&gt;
&lt;li&gt;Additional phishing indicators&lt;/li&gt;
&lt;li&gt;Better AI response formatting&lt;/li&gt;
&lt;li&gt;More automated tests&lt;/li&gt;
&lt;li&gt;SOC-oriented alert explanations&lt;/li&gt;
&lt;li&gt;MITRE ATT&amp;amp;CK mapping for relevant security indicators&lt;/li&gt;
&lt;li&gt;More accessible UI for non-technical users&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The goal is to gradually turn CyberBuddy from a simple analyzer into a more useful personal cybersecurity assistant.&lt;/p&gt;
&lt;h2&gt;
  
  
  Try CyberBuddy
&lt;/h2&gt;

&lt;p&gt;The project is available on GitHub:&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/akashjha518" rel="noopener noreferrer"&gt;
        akashjha518
      &lt;/a&gt; / &lt;a href="https://github.com/akashjha518/CyberBuddy" rel="noopener noreferrer"&gt;
        CyberBuddy
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      CyberBuddy is an AI-powered cybersecurity assistant that helps non-technical users analyze suspicious messages and URLs, assess security risks, and understand threats through local Gemma 3 4B AI running with Ollama.
    &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;🛡️ CyberBuddy&lt;/h1&gt;
&lt;/div&gt;

&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;AI-Powered Cybersecurity Assistant for Non-Technical Users&lt;/h3&gt;
&lt;/div&gt;

&lt;p&gt;CyberBuddy is a local, AI-powered cybersecurity assistant designed to help non-technical users understand and respond to suspicious messages and URLs.&lt;/p&gt;

&lt;p&gt;Instead of requiring cybersecurity knowledge, CyberBuddy analyzes potentially dangerous content, identifies security indicators, assigns a risk level, and explains the result in simple language.&lt;/p&gt;

&lt;p&gt;The project uses deterministic security analysis for risk assessment and &lt;strong&gt;Gemma 3 4B&lt;/strong&gt;, running locally through &lt;strong&gt;Ollama&lt;/strong&gt;, as an AI explanation layer.&lt;/p&gt;




&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🚀 Why CyberBuddy?&lt;/h2&gt;
&lt;/div&gt;

&lt;p&gt;Cybersecurity warnings are often difficult for non-technical users to understand.&lt;/p&gt;

&lt;p&gt;A suspicious message may contain:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Urgent requests&lt;/li&gt;
&lt;li&gt;Phishing links&lt;/li&gt;
&lt;li&gt;Requests for passwords or OTPs&lt;/li&gt;
&lt;li&gt;Fake account warnings&lt;/li&gt;
&lt;li&gt;Financial requests&lt;/li&gt;
&lt;li&gt;Suspicious URLs&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;CyberBuddy provides a simple workflow:&lt;/p&gt;

&lt;div class="snippet-clipboard-content notranslate position-relative overflow-auto"&gt;&lt;pre class="notranslate"&gt;&lt;code&gt;Suspicious Message / URL
          ↓
   Security Analysis
          ↓
    Risk Assessment
          ↓
      Evidence
          ↓
    Gemma 3 4B AI
          ↓
 Simple Explanation
          ↓
    Safe Actions
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;✨ Features&lt;/h2&gt;

&lt;/div&gt;

&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;📩 Suspicious Message Analyzer&lt;/h3&gt;

&lt;/div&gt;

&lt;p&gt;Analyze suspicious emails, SMS messages, and…&lt;/p&gt;&lt;/div&gt;


&lt;/div&gt;
&lt;br&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/akashjha518/CyberBuddy" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;br&gt;


&lt;p&gt;To run the project locally, you'll need Python, Ollama, and Gemma 3 4B.&lt;br&gt;
The basic AI setup is:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ollama pull gemma3:4b
ollama run gemma3:4b
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then start the CyberBuddy backend:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;uvicorn backend.main:app --reload --port 8000
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Open the frontend and start analyzing suspicious messages or URLs.&lt;/p&gt;

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

&lt;p&gt;Cybersecurity doesn't have to be understandable only to cybersecurity professionals.&lt;br&gt;
Sometimes the most useful security tool is one that simply answers:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Here's why this looks suspicious, and here's what you should do next."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That's what I wanted CyberBuddy to provide.&lt;br&gt;
I'm excited to build on this project and continue exploring how local open-weight AI can make cybersecurity guidance more accessible to everyday users.&lt;br&gt;
Thanks to the Hacktoberfest Weekend Challenge: Build for a Friend for encouraging developers to build something around a genuine problem faced by someone else.&lt;/p&gt;

</description>
      <category>hf26challenge</category>
      <category>ai</category>
      <category>cybersecurity</category>
      <category>gemma</category>
    </item>
  </channel>
</rss>
