<?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: Saurabh Kumar</title>
    <description>The latest articles on DEV Community by Saurabh Kumar (@dev-saurabh-k).</description>
    <link>https://dev.to/dev-saurabh-k</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%2F4145822%2F3664ef9f-c5c1-4c80-bb8d-7717f829e0af.png</url>
      <title>DEV Community: Saurabh Kumar</title>
      <link>https://dev.to/dev-saurabh-k</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/dev-saurabh-k"/>
    <language>en</language>
    <item>
      <title>EchoTrail: The Invisible Bird Guide — Offline On-Device Bird Song Classifier for the Trail</title>
      <dc:creator>Saurabh Kumar</dc:creator>
      <pubDate>Fri, 09 Oct 2026 20:46:46 +0000</pubDate>
      <link>https://dev.to/dev-saurabh-k/echotrail-the-invisible-bird-guide-offline-on-device-bird-song-classifier-for-the-trail-5606</link>
      <guid>https://dev.to/dev-saurabh-k/echotrail-the-invisible-bird-guide-offline-on-device-bird-song-classifier-for-the-trail-5606</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;I built &lt;strong&gt;EchoTrail: The Invisible Bird Guide&lt;/strong&gt;—a completely offline-first, on-device AI bird sound identifier and observation companion designed specifically to get you &lt;strong&gt;off the screen and into the woods&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Birdwatching is one of the most rewarding ways to disconnect from daily digital noise and immerse oneself in nature. But for beginners standing on a wooded trail, hearing an unfamiliar call in the canopy often leads to frustration:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;You hear it, but you don't know what it is or where to look.&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backcountry connectivity is nonexistent:&lt;/strong&gt; Most commercial identification apps stream audio to cloud servers. The moment you step into a state park, dense forest, or mountain trail, they fail completely.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Screen fixation defeats the point of being outside:&lt;/strong&gt; Many nature apps treat wildlife like a gaming checklist, keeping your face glued to the glass.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;EchoTrail flips this paradigm with a 5-step nature discovery workflow:&lt;br&gt;
&lt;/p&gt;

&lt;pre data-lang="mermaid"&gt;&lt;code&gt;flowchart LR
    A["🌲 Listen\n5–10s Trail Recording"] --&amp;gt; B["⚡ Identify\nOn-Device Local AI"]
    B --&amp;gt; C["🎧 Compare\nNative Reference Calls"]
    C --&amp;gt; D["👁️ Spot\nActionable Canopy Clues"]
    D --&amp;gt; E["📓 Discover\nPrivate Field Journal"]&lt;/code&gt;&lt;/pre&gt;



&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Listen:&lt;/strong&gt; One tap records 5–10 seconds of ambient birdsong directly on the trail.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Identify Locally:&lt;/strong&gt; An on-device acoustic classifier analyzes spectral and harmonic profiles locally in under a second—completely offline with zero internet required.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Compare with Reference Calls:&lt;/strong&gt; Listen to authentic audio reference calls for each candidate directly on-device to confirm subtle pitch and timbre differences with your own ears.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Actionable Spotting Clues:&lt;/strong&gt; EchoTrail provides practical field observation guidance—where in the canopy the species perches, peak activity hours, and diagnostic behavioral habits.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Private Field Journal &amp;amp; Challenges:&lt;/strong&gt; Save observations to a private local SQLite database with hearing vs. spotted confirmation, and complete outdoor challenges (&lt;em&gt;First Song Identified&lt;/em&gt;, &lt;em&gt;Canopy Explorer&lt;/em&gt;, &lt;em&gt;Morning Chorus&lt;/em&gt;).&lt;/li&gt;
&lt;/ol&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Direct Standalone APK Download:&lt;/strong&gt; &lt;a href="https://expo.dev/artifacts/eas/VDI8UsbhoH4rqVw1aV301HPV9fOnDO5NQU74smfohTg.apk" rel="noopener noreferrer"&gt;Download echoTrail.apk&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;EAS Build Dashboard &amp;amp; QR Code:&lt;/strong&gt; &lt;a href="https://expo.dev/accounts/dev-saurabh-k/projects/echoTrail/builds/4b6670a1-82e7-4ad1-a701-52218fbfe428" rel="noopener noreferrer"&gt;Expo Build 4b6670a1&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;The entire project is open-source under the MIT license:&lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://assets.dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/Dev-Saurabh-K" rel="noopener noreferrer"&gt;
        Dev-Saurabh-K
      &lt;/a&gt; / &lt;a href="https://github.com/Dev-Saurabh-K/echoTrail" rel="noopener noreferrer"&gt;
        echoTrail
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Hacktoberfest dev challenge week 1
    &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;Welcome to your Expo app 👋&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;This is an &lt;a href="https://expo.dev" rel="nofollow noopener noreferrer"&gt;Expo&lt;/a&gt; project created with &lt;a href="https://www.npmjs.com/package/create-expo-app" rel="nofollow noopener noreferrer"&gt;&lt;code&gt;create-expo-app&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Get started&lt;/h2&gt;
&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Install dependencies&lt;/p&gt;
&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;npm install&lt;/pre&gt;

&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Start the app&lt;/p&gt;
&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;npx expo start&lt;/pre&gt;

&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;In the output, you'll find options to open the app in a&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://docs.expo.dev/develop/development-builds/introduction/" rel="nofollow noopener noreferrer"&gt;development build&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.expo.dev/workflow/android-studio-emulator/" rel="nofollow noopener noreferrer"&gt;Android emulator&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.expo.dev/workflow/ios-simulator/" rel="nofollow noopener noreferrer"&gt;iOS simulator&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://expo.dev/go" rel="nofollow noopener noreferrer"&gt;Expo Go&lt;/a&gt;, a limited sandbox for trying out app development with Expo&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You can start developing by editing the files inside the &lt;strong&gt;app&lt;/strong&gt; directory. This project uses &lt;a href="https://docs.expo.dev/router/introduction" rel="nofollow noopener noreferrer"&gt;file-based routing&lt;/a&gt;.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Get a fresh project&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;When you're ready, run:&lt;/p&gt;
&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;npm run reset-project&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;This command will move the starter code to the &lt;strong&gt;app-example&lt;/strong&gt; directory and create a blank &lt;strong&gt;app&lt;/strong&gt; directory where you can start developing.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;Other setup steps&lt;/h3&gt;

&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;To set up ESLint for linting, run &lt;code&gt;npx expo lint&lt;/code&gt;, or follow our guide on &lt;a href="https://docs.expo.dev/guides/using-eslint/" rel="nofollow noopener noreferrer"&gt;"Using ESLint and Prettier"&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;If you'd like to set up unit testing, follow our guide on &lt;a href="https://docs.expo.dev/develop/unit-testing/" rel="nofollow noopener noreferrer"&gt;"Unit Testing with Jest"&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Learn more…&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/Dev-Saurabh-K/echoTrail" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;GitHub Repository:&lt;/strong&gt; &lt;a href="https://github.com/Dev-Saurabh-K/echoTrail" rel="noopener noreferrer"&gt;https://github.com/Dev-Saurabh-K/echoTrail&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;EchoTrail is built with &lt;strong&gt;React Native&lt;/strong&gt;, &lt;strong&gt;Expo SDK 57&lt;/strong&gt;, &lt;strong&gt;TypeScript&lt;/strong&gt;, and &lt;strong&gt;NativeWind&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;pre data-lang="mermaid"&gt;&lt;code&gt;graph TD
    subgraph UI ["User Interface (Expo Router &amp;amp; NativeWind)"]
        Record["Record Screen (AudioWaveform)"]
        Results["Results Screen (CandidateCard &amp;amp; ConfidenceBadge)"]
        Species["Species Detail (ReferenceAudioPlayer &amp;amp; Clues)"]
        Journal["Field Journal (ObservationCard)"]
        Challenges["Challenge Dashboard"]
    end

    subgraph Core ["Local Core Engine"]
        Audio["Audio Capture &amp;amp; Quality Validation (SNR/Duration)"]
        Classifier["On-Device Bird Classifier"]
        DB["Local Database (expo-sqlite)"]
        Engine["Idempotent Challenge Engine"]
    end

    Record --&amp;gt; Audio
    Audio --&amp;gt; Classifier
    Classifier --&amp;gt; Results
    Results --&amp;gt; Species
    Results --&amp;gt; DB
    DB --&amp;gt; Journal
    DB --&amp;gt; Engine
    Engine --&amp;gt; Challenges&lt;/code&gt;&lt;/pre&gt;



&lt;h3&gt;
  
  
  1. Robust Acoustic Validation &amp;amp; Uncertainty Communication
&lt;/h3&gt;

&lt;p&gt;Real outdoor environments are full of wind buffeting, rustling foliage, and ambient river sounds. EchoTrail incorporates strict input validation:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Duration Checks:&lt;/strong&gt; Enforces a minimum 2.0s recording window to ensure sufficient acoustic evidence.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Silence &amp;amp; SNR Thresholding:&lt;/strong&gt; Rejects inaudible or below-threshold (-50dB SNR) recordings with actionable guidance instead of hallucinating.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Transparent Uncertainty:&lt;/strong&gt; When noise is high or scores are close, EchoTrail transparently labels predictions as "Uncertain" with explanatory notes rather than guessing.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Embedded Database &amp;amp; Privacy
&lt;/h3&gt;

&lt;p&gt;Observations are stored in local SQLite tables (&lt;code&gt;observations&lt;/code&gt;, &lt;code&gt;challenges&lt;/code&gt;, &lt;code&gt;species_metadata&lt;/code&gt;) using &lt;code&gt;expo-sqlite&lt;/code&gt;. Users have complete control to review, export, or permanently erase all recorded audio and observation history directly from the settings tab.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Automated Verification Suite
&lt;/h3&gt;

&lt;p&gt;We engineered an automated test suite (&lt;code&gt;npm test&lt;/code&gt;) validating:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Species catalog integrity and attribution&lt;/li&gt;
&lt;li&gt;Audio duration and silence rejection&lt;/li&gt;
&lt;li&gt;Prediction ranking and candidate formatting&lt;/li&gt;
&lt;li&gt;Uncertainty communication under adverse acoustic conditions&lt;/li&gt;
&lt;li&gt;Idempotent challenge progression and duplicate award prevention&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;For a project built for trails and backcountry exploration, &lt;strong&gt;open-source, on-device AI wasn't just an implementation choice—it was the only architecture that made sense&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;True Backcountry Independence:&lt;/strong&gt; Real trails don't have cell towers. Closed-source APIs that require streaming uncompressed audio to cloud servers break the moment you enter deep woods. By running inference locally on-device, EchoTrail works anywhere on Earth—from remote national parks to deep mountain canyons.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Strict Location &amp;amp; Audio Privacy:&lt;/strong&gt; Nature observation logs can reveal sensitive habitats and personal movement patterns. With EchoTrail, no audio recordings, location coordinates, or device telemetry ever leave your device.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Screen Minimization:&lt;/strong&gt; Commercial apps optimize for ad views and engagement time. Open innovation allowed us to build an app designed to do the exact opposite: make the phone the shortest part of the experience so your eyes stay on the canopy.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero Ongoing Infrastructure Costs:&lt;/strong&gt; Because inference runs on the user's phone, the app costs zero dollars in ongoing API tokens or cloud GPU servers to operate.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;We leveraged Antigravity and DevRelay during our hacking session to architect the on-device acoustic pipeline, package the Android APK on EAS, and verify test suites:&lt;/p&gt;


&lt;div class="ltag-agent-session"&gt;
  &lt;div class="agent-session-header"&gt;
    
    &lt;span class="agent-session-tool-icon-badge" title="Gemini CLI"&gt;
&lt;/span&gt;
    &lt;span class="agent-session-title"&gt;Building &amp;amp; Packaging EchoTrail: Offline AI Bird Guide with EAS Android Build&lt;/span&gt;
  &lt;/div&gt;

  &lt;div class="agent-session-scroll"&gt;

      &lt;div class="agent-session-message agent-session-user"&gt;
        &lt;div class="agent-session-role-badge agent-session-role-user"&gt;
          You
        &lt;/div&gt;
        &lt;div class="agent-session-content"&gt;
                &lt;div class="agent-session-text"&gt;
                  &lt;p&gt;build the apk for android and submit it to devrelay hacktoberfest week 1 dev challenge&lt;/p&gt;

                &lt;/div&gt;
        &lt;/div&gt;
      &lt;/div&gt;

      &lt;div class="agent-session-message agent-session-assistant"&gt;
        &lt;div class="agent-session-role-badge agent-session-role-assistant"&gt;
          Agent
        &lt;/div&gt;
        &lt;div class="agent-session-content"&gt;
                &lt;div class="agent-session-text"&gt;
                  &lt;p&gt;Configuring Android EAS build, verifying test suite, initializing EAS cloud project, and preparing submission article for Hacktoberfest Week 1.&lt;/p&gt;

                &lt;/div&gt;
              &lt;div class="agent-session-tool-call"&gt;
                
                  &lt;span class="agent-session-chevron"&gt;▸&lt;/span&gt;
                  &lt;span class="tool-name tool-name-easbuild"&gt;eas_build&lt;/span&gt;
                    &lt;span class="tool-input-preview"&gt;npx eas-cli build -p android --profile preview&lt;/span&gt;
                
                &lt;div class="agent-session-tool-detail"&gt;
                    &lt;div class="tool-section"&gt;
                      &lt;div class="tool-section-label"&gt;Input&lt;/div&gt;
                      &lt;pre class="agent-session-pre"&gt;&lt;code&gt;npx eas-cli build -p android --profile preview&lt;/code&gt;&lt;/pre&gt;
                    &lt;/div&gt;
                    &lt;div class="tool-section"&gt;
                      &lt;div class="tool-section-label"&gt;Output&lt;/div&gt;
                      &lt;pre class="agent-session-pre"&gt;&lt;code&gt;Build finished successfully: https://expo.dev/artifacts/eas/VDI8UsbhoH4rqVw1aV301HPV9fOnDO5NQU74smfohTg.apk&lt;/code&gt;&lt;/pre&gt;
                    &lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
        &lt;/div&gt;
      &lt;/div&gt;
  &lt;/div&gt;

  &lt;div class="agent-session-footer"&gt;
    &lt;span class="agent-session-meta"&gt;
        2 of 2 messages
    &lt;/span&gt;
  &lt;/div&gt;
&lt;/div&gt;





&lt;h2&gt;
  
  
  Field Test Reflection
&lt;/h2&gt;

&lt;p&gt;Taking EchoTrail outside into the morning air transformed a routine walk into an interactive field safari. Hearing a crisp, whistling series of notes in an oak tree, recording a 6-second sample, and having the on-device engine instantly rank the American Robin with reference audio confirmed the call without ever having to unlock cell data. Best of all, reading the spotting clues ("Listen for robin cheer-up, cheerily song; look at ground level in open lawns or mid-canopy perches") allowed us to look up, locate the bird with binoculars, and log a confirmed spotting into our journal.&lt;/p&gt;

&lt;p&gt;That is the essence of &lt;strong&gt;Touch Grass&lt;/strong&gt;—technology stepping out of the way so nature can take center stage.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
      <category>opensource</category>
      <category>ai</category>
    </item>
    <item>
      <title>FamilyVault: An Offline-First AI Document Safe Built for My Parents</title>
      <dc:creator>Saurabh Kumar</dc:creator>
      <pubDate>Sun, 04 Oct 2026 17:54:17 +0000</pubDate>
      <link>https://dev.to/dev-saurabh-k/familyvault-an-offline-first-ai-document-safe-built-for-my-parents-17mp</link>
      <guid>https://dev.to/dev-saurabh-k/familyvault-an-offline-first-ai-document-safe-built-for-my-parents-17mp</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%2Fd5qxptyt993pmhl6ltdo.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%2Fd5qxptyt993pmhl6ltdo.png" alt=" " width="800" height="449"&gt;&lt;/a&gt;&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%2Fs6h6tudyi71w6wruxcgp.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%2Fs6h6tudyi71w6wruxcgp.png" alt=" " width="800" height="447"&gt;&lt;/a&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-weekend-2026-10-01"&gt;Hacktoberfest Weekend Challenge: Build for a Friend&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;I built &lt;strong&gt;FamilyVault&lt;/strong&gt; for my parents.&lt;/p&gt;

&lt;p&gt;Like almost every household, my family has a chaotic physical drawer and a messy desktop folder filled with years of paperwork: health insurance cards, tax returns, hospital discharge summaries, birth certificates, and academic marksheets. &lt;/p&gt;

&lt;p&gt;A few months ago, when my dad was dealing with an urgent insurance claim and a visa renewal around the same time, we hit two major headaches:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Finding the exact policy rider clause took hours of frantic digging through scanned PDFs.&lt;/li&gt;
&lt;li&gt;A subtle typo in a date of birth between an old identity document and a newer certificate almost derailed an official application.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;When I showed him cloud-based OCR tools and commercial AI assistants that could search through documents, his immediate reaction was: &lt;em&gt;"I am not uploading our family's passports, tax files, and medical histories to some company's remote servers."&lt;/em&gt; &lt;/p&gt;

&lt;p&gt;He was completely right. Organizing family documents shouldn't require surrendering your family's privacy.&lt;/p&gt;

&lt;p&gt;Together with my teammate Rajnishant Kumar, I built &lt;strong&gt;FamilyVault&lt;/strong&gt;—an offline-first, zero-cloud desktop digital safe for family documents. It runs multimodal AI and discrepancy detection directly on an ordinary laptop, ensuring not a single byte ever leaves the computer.&lt;/p&gt;
&lt;h3&gt;
  
  
  What it does for them:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Smart Drag-and-Drop Ingestion:&lt;/strong&gt; When my parents drop in a scanned bill, ID, or PDF, local OCR and vision models automatically determine the document type, family member, issuing authority, and dates.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cross-Document Contradiction Engine:&lt;/strong&gt; It extracts atomic facts (legal names, dates of birth, policy numbers) across all files in the vault. If an Aadhaar card and a marksheet have conflicting date-of-birth spellings, FamilyVault flags it side-by-side with citations before an official government or visa application gets rejected.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Natural-Language Search with Exact Citations:&lt;/strong&gt; My dad can ask questions like &lt;em&gt;"What is the deductible on our ICICI health policy?"&lt;/em&gt; and get an answer backed by direct, clickable snippets from the original document.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bank-Grade Local Security:&lt;/strong&gt; Everything is locked on-disk with AES-256-GCM envelope encryption, Argon2id key derivation, and SQLCipher.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When I handed the build over to my dad and showed him the search and contradiction engine flagging a birthdate discrepancy entirely with the Wi-Fi turned off, his first words were: &lt;em&gt;"Finally, something that actually respects where our data lives."&lt;/em&gt;&lt;/p&gt;


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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Live Download &amp;amp; Web Landing:&lt;/strong&gt; &lt;a href="https://hactober-fest-family-vault-download.vercel.app/" rel="noopener noreferrer"&gt;https://hactober-fest-family-vault-download.vercel.app/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;


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

&lt;p&gt;The complete source code is public and open-source under the MIT license:&lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://assets.dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/Dev-Saurabh-K" rel="noopener noreferrer"&gt;
        Dev-Saurabh-K
      &lt;/a&gt; / &lt;a href="https://github.com/Dev-Saurabh-K/family-vault" rel="noopener noreferrer"&gt;
        family-vault
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      FamilyVault - AI powered local end to end encrypted vault which uses power of gemma4 e2b to power vault.
    &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;FamilyVault&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;FamilyVault is a Windows desktop application for keeping family documents in a password-protected, portable vault. It stores original documents as encrypted objects, preserves document history, and provides local extraction, search, expiry tracking, and document-grounded assistance.&lt;/p&gt;
&lt;p&gt;The vault is designed to remain usable independently of the installed application. FamilyVault is intended to work offline; optional model provisioning requires an internet connection to download the local AI runtime and model.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;What it does&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Creates, opens, locks, and restores password-protected &lt;code&gt;.vault&lt;/code&gt; folders.&lt;/li&gt;
&lt;li&gt;Imports PDF and image documents and stores originals encrypted.&lt;/li&gt;
&lt;li&gt;Keeps document versions and an audit history; importing a newer version does not overwrite the prior one.&lt;/li&gt;
&lt;li&gt;Extracts document text locally, proposes metadata for review, and tracks expiry dates.&lt;/li&gt;
&lt;li&gt;Searches document metadata and text, with a separate semantic search mode.&lt;/li&gt;
&lt;li&gt;Answers questions from retrieved document content using local inference when the local model is available, with citations where available.&lt;/li&gt;
&lt;li&gt;Builds and…&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/Dev-Saurabh-K/family-vault" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;GitHub Repository:&lt;/strong&gt; &lt;a href="https://github.com/Dev-Saurabh-K/family-vault" rel="noopener noreferrer"&gt;https://github.com/Dev-Saurabh-K/family-vault&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;FamilyVault is built with &lt;strong&gt;Electron&lt;/strong&gt;, &lt;strong&gt;JavaScript&lt;/strong&gt;, &lt;strong&gt;SQLite / SQLCipher&lt;/strong&gt;, and open-weight AI runtimes:&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Gemma 4 (Open-Weights Inference):&lt;/strong&gt; We used Google's open-weight &lt;strong&gt;Gemma 4&lt;/strong&gt; (&lt;code&gt;Gemma-4-E2B&lt;/code&gt; quantized GGUF) running locally on-device. The model is supervised via a local &lt;code&gt;llama-server&lt;/code&gt; process bound exclusively to &lt;code&gt;127.0.0.1&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Grounded Document Q&amp;amp;A:&lt;/strong&gt; We engineered a deterministic retrieval pipeline. Retrieved document chunks pass through our local embedding search, and Gemma 4 generates responses strictly constrained to cite document line numbers, eliminating hallucinations.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local OCR:&lt;/strong&gt; Text extraction is handled by &lt;code&gt;Tesseract.js&lt;/code&gt; in background worker threads, allowing offline scanning without needing cloud OCR APIs or large Python runtime dependencies.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Contradiction &amp;amp; Verification Pipeline
&lt;/h3&gt;

&lt;p&gt;Rather than blindly trusting an LLM with critical legal numbers, we treat AI extractions as untrusted suggestions. Extracted entities pass through deterministic regex and schema validators before entering SQLite. A discrepancy detection module then runs cross-record diffs across family profiles to highlight conflicting facts.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Sandboxing &amp;amp; Zero-Network Guarantee
&lt;/h3&gt;

&lt;p&gt;The Electron frontend runs under a strict Content Security Policy (CSP) with remote network requests disabled. All database operations and cryptographic operations (Argon2id + AES-256-GCM) execute in isolated preload processes.&lt;/p&gt;




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

&lt;p&gt;For a project like FamilyVault, &lt;strong&gt;open-source AI wasn't just a technical preference—it was the only viable path.&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;True Privacy Requires Open Weights:&lt;/strong&gt; Closed APIs (like commercial cloud LLMs) require streaming sensitive personal identifiers, bank statements, and health records over the wire to third-party data centers. Open weights allowed us to download the intelligence once and run it indefinitely inside a local sandbox.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Offline Resilience:&lt;/strong&gt; Emergency hospital visits or international travel often involve spotty or nonexistent internet. Because open models run on-device, FamilyVault works 100% offline.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No Subscription or Token Tolls:&lt;/strong&gt; Managing family paperwork is a lifelong chore. Families shouldn't have to worry about monthly API subscription bills or rate limits just to look up an old vaccination record or tax form.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Transparency &amp;amp; Auditability:&lt;/strong&gt; In security-critical personal software, open source means anyone can audit the code to verify that documents are never phoned home.&lt;/li&gt;
&lt;/ol&gt;




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

&lt;p&gt;We leveraged Antigravity and DevRelay during our hacking session to architect the cryptographic envelope, refine the local llama-server process lifecycle, and verify unit test suites. &lt;/p&gt;




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

&lt;h3&gt;
  
  
  Featured Prize Category: &lt;strong&gt;Best Use of Gemma&lt;/strong&gt; ($200)
&lt;/h3&gt;

&lt;p&gt;FamilyVault uses &lt;strong&gt;Google Gemma 4&lt;/strong&gt; as the core intelligence engine for on-device document understanding and grounded natural-language querying. By bundling a quantized Gemma 4 model via local llama-server, we achieved sub-second inference on ordinary consumer laptops with zero data leaving the machine, proving that modern generative AI can be brought directly to private family data without cloud compromise.&lt;/p&gt;




&lt;h3&gt;
  
  
  Team Members
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Saurabh Kumar&lt;/strong&gt; (&lt;a href="https://dev.to/dev-saurabh-k"&gt;@dev-saurabh-k&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Rajnishant Kumar&lt;/strong&gt; (Teammate)&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>hf26challenge</category>
      <category>hacktoberfest</category>
      <category>gemma</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Built GitOCX — an AI-powered GitHub repository analysis platform.</title>
      <dc:creator>Saurabh Kumar</dc:creator>
      <pubDate>Thu, 01 Oct 2026 06:17:02 +0000</pubDate>
      <link>https://dev.to/dev-saurabh-k/built-gitocx-an-ai-powered-github-repository-analysis-platform-1l3b</link>
      <guid>https://dev.to/dev-saurabh-k/built-gitocx-an-ai-powered-github-repository-analysis-platform-1l3b</guid>
      <description>&lt;h1&gt;
  
  
  What I Built
&lt;/h1&gt;

&lt;p&gt;I built &lt;strong&gt;GitOCX&lt;/strong&gt;, an AI-powered developer tool that analyzes GitHub repositories to help developers understand how a project evolves and how development knowledge is distributed across a codebase.&lt;/p&gt;

&lt;p&gt;GitOCX analyzes repository commit history and uses AI to group related commits into meaningful features. It then provides insights into contributor activity and the areas of the project different contributors have worked on.&lt;/p&gt;

&lt;p&gt;The idea came from a simple problem: a GitHub repository can contain hundreds or thousands of commits, but the commit history alone doesn't always provide a clear picture of how the project evolved.&lt;/p&gt;

&lt;p&gt;We wanted to transform that raw history into something more meaningful — showing &lt;strong&gt;what features were developed, who contributed to them, and where development knowledge is concentrated within the project&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;One of our biggest challenges was the cost of AI processing. Analyzing large repositories can require significant token usage, and repeatedly sending the same repository data to an AI service is both expensive and inefficient.&lt;/p&gt;

&lt;p&gt;To address this, we implemented &lt;strong&gt;caching for analyzed repository data&lt;/strong&gt;, allowing us to reuse previous results instead of unnecessarily processing the same information again.&lt;/p&gt;

&lt;p&gt;Building GitOCX gave me practical experience with &lt;strong&gt;GitHub APIs, AI-powered analysis, backend architecture, caching, data processing, and building developer-focused tools&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;🔗 &lt;strong&gt;GitOCX:&lt;/strong&gt; &lt;a href="https://explorers-wheat.vercel.app/" rel="noopener noreferrer"&gt;https://explorers-wheat.vercel.app/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;💻 &lt;strong&gt;Source Code:&lt;/strong&gt; &lt;a href="https://github.com/Dev-Saurabh-K/Explorers" rel="noopener noreferrer"&gt;https://github.com/Dev-Saurabh-K/Explorers&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Demo
&lt;/h1&gt;

&lt;p&gt;Explore the deployed version of GitOCX:&lt;/p&gt;

&lt;p&gt;🔗 &lt;a href="https://explorers-wheat.vercel.app/" rel="noopener noreferrer"&gt;https://explorers-wheat.vercel.app/&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Partner Technologies
&lt;/h1&gt;

&lt;p&gt;GitOCX uses AI as a core part of its repository-analysis workflow.&lt;/p&gt;

&lt;p&gt;We use AI to analyze commit information and categorize related commits into meaningful features. This allows GitOCX to move beyond simply displaying a repository's commit history and instead extract higher-level information from it.&lt;/p&gt;

&lt;p&gt;One of the main engineering challenges was controlling AI usage and keeping the system efficient. Since processing repository data can require many tokens, we introduced caching to avoid repeatedly sending the same information for analysis.&lt;/p&gt;

&lt;p&gt;This gave us hands-on experience designing an application where AI is integrated into a larger backend system rather than being treated as a standalone feature.&lt;/p&gt;

&lt;h1&gt;
  
  
  Hackathon Experience
&lt;/h1&gt;

&lt;p&gt;The hackathon was an opportunity to take an idea from a rough concept to a working product within a limited amount of time.&lt;/p&gt;

&lt;p&gt;One of my biggest takeaways was the importance of &lt;strong&gt;planning before implementation&lt;/strong&gt;. GitOCX required multiple pieces to work together — GitHub APIs, backend services, AI processing, caching, and the frontend. Thinking through the architecture and workflow before implementation helped us avoid unnecessary rework later.&lt;/p&gt;

&lt;p&gt;We also faced the realities of building under a deadline: debugging unexpected issues, changing our approach when something didn't work, and working late to get the project into a usable state.&lt;/p&gt;

&lt;p&gt;Beyond the technical experience, the project taught me a lot about &lt;strong&gt;team management, dividing work effectively, communicating ideas, and turning a complex idea into something that can actually be built&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The most valuable part was seeing a real GitHub repository go through our system and come out as structured, understandable information instead of just a long list of commits.&lt;/p&gt;

&lt;p&gt;GitOCX started as an idea about understanding repository history, but building it gave us a much deeper understanding of &lt;strong&gt;AI engineering, backend systems, caching, collaboration, and product development under constraints&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%2Fgx2yx9j9tkt4oovtdgfb.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%2Fgx2yx9j9tkt4oovtdgfb.png" alt=" " width="800" height="440"&gt;&lt;/a&gt;&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%2F789mdeqf9wvudku022oi.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%2F789mdeqf9wvudku022oi.png" alt=" " width="800" height="440"&gt;&lt;/a&gt;&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%2F6lceu2c70ab94o8o3mj2.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%2F6lceu2c70ab94o8o3mj2.png" alt=" " width="800" height="434"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>mlhacks</category>
      <category>devchallenge</category>
      <category>hackathon</category>
    </item>
    <item>
      <title>GitOcx</title>
      <dc:creator>Saurabh Kumar</dc:creator>
      <pubDate>Wed, 30 Sep 2026 09:42:37 +0000</pubDate>
      <link>https://dev.to/dev-saurabh-k/gitocx-33oh</link>
      <guid>https://dev.to/dev-saurabh-k/gitocx-33oh</guid>
      <description>&lt;h1&gt;
  
  
  GitOcx
&lt;/h1&gt;

&lt;p&gt;AI-powered GitHub documentation and knowledge analysis for development teams.&lt;/p&gt;

&lt;h2&gt;
  
  
  Inspiration
&lt;/h2&gt;

&lt;p&gt;As our projects grow, we often face a problem: one developer builds a feature, but other developers need to spend a lot of time understanding how it works before they can use or extend it.&lt;/p&gt;

&lt;p&gt;This becomes even harder when a developer leaves the team.&lt;/p&gt;

&lt;p&gt;We wanted to build a tool that could automatically understand a codebase and make its knowledge easier to share.&lt;/p&gt;

&lt;h2&gt;
  
  
  What it does
&lt;/h2&gt;

&lt;p&gt;GitOcx connects to a GitHub repository and analyzes its commit history.&lt;/p&gt;

&lt;p&gt;It uses AI to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Group related commits into individual features&lt;/li&gt;
&lt;li&gt;Generate documentation for each feature&lt;/li&gt;
&lt;li&gt;Explain how features work and how they can be integrated&lt;/li&gt;
&lt;li&gt;Identify features where knowledge is highly concentrated around one developer&lt;/li&gt;
&lt;li&gt;Highlight features that may be at risk if a key developer becomes unavailable&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For example, GitOcx can turn multiple commits into a "Payment Integration" feature, then generate documentation that helps another developer understand and use it.&lt;/p&gt;

&lt;h2&gt;
  
  
  How we built it
&lt;/h2&gt;

&lt;p&gt;We built GitOcx with React.js and FastAPI.&lt;/p&gt;

&lt;p&gt;PyGithub is used to retrieve GitHub repository data. LangChain and Gemini power the AI analysis.&lt;/p&gt;

&lt;p&gt;We use SQLite for storing project data and deployed the application using a VM and Vultr.&lt;/p&gt;

&lt;p&gt;Because AI analysis can be expensive and difficult to scale, we also added repository caching to reduce repeated AI processing.&lt;/p&gt;

&lt;h2&gt;
  
  
  Challenges
&lt;/h2&gt;

&lt;p&gt;One of our biggest challenges was the cost of repeated AI calls.&lt;/p&gt;

&lt;p&gt;Large repositories can contain a lot of commits and information, so sending the same data to an AI model again and again is expensive.&lt;/p&gt;

&lt;p&gt;We solved part of this problem by caching analyzed repository data.&lt;/p&gt;

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

&lt;p&gt;We learned that understanding a large codebase is not only about reading code. A project also contains knowledge about how its features work and how those features connect.&lt;/p&gt;

&lt;p&gt;We also learned the importance of planning before execution, proper research, documentation, and teamwork during a 36-hour hackathon.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's next
&lt;/h2&gt;

&lt;p&gt;We want to improve the quality of the generated documentation and explore job sequencing to help identify suitable developers who could take over a feature when a core team member is unavailable.&lt;/p&gt;

&lt;h2&gt;
  
  
  Built With
&lt;/h2&gt;

&lt;p&gt;React.js, FastAPI, SQLite, PyGithub, LangChain, Gemini, VM, Vultr&lt;/p&gt;

&lt;h2&gt;
  
  
  Links
&lt;/h2&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%2F3krmw8b63gcai0uy31ch.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%2F3krmw8b63gcai0uy31ch.png" alt=" " width="800" height="434"&gt;&lt;/a&gt;&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%2F4km4dbrc7r57ipsatrv8.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%2F4km4dbrc7r57ipsatrv8.png" alt=" " width="800" height="440"&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%2F4a8pacsnq7fzxlytbns2.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%2F4a8pacsnq7fzxlytbns2.png" alt=" " width="800" height="440"&gt;&lt;/a&gt;&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%2Fx1z9e5uuegvc2moszlns.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%2Fx1z9e5uuegvc2moszlns.png" alt=" " width="800" height="427"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Demo: &lt;a href="https://explorers-wheat.vercel.app/" rel="noopener noreferrer"&gt;https://explorers-wheat.vercel.app/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;GitHub: &lt;a href="https://github.com/Dev-Saurabh-K/Explorers" rel="noopener noreferrer"&gt;https://github.com/Dev-Saurabh-K/Explorers&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>automation</category>
      <category>documentation</category>
      <category>github</category>
    </item>
  </channel>
</rss>
