<?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: Kushagra Bhardwaj</title>
    <description>The latest articles on DEV Community by Kushagra Bhardwaj (@kush05bhardwaj).</description>
    <link>https://dev.to/kush05bhardwaj</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%2F2213235%2F3a7b64c3-f858-4278-88bb-ec71989eb23e.jpg</url>
      <title>DEV Community: Kushagra Bhardwaj</title>
      <link>https://dev.to/kush05bhardwaj</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/kush05bhardwaj"/>
    <language>en</language>
    <item>
      <title>ScopeGuard Local: A Local-First AI Assistant for Freelancers Fighting Scope Creep</title>
      <dc:creator>Kushagra Bhardwaj</dc:creator>
      <pubDate>Sun, 18 Oct 2026 17:36:09 +0000</pubDate>
      <link>https://dev.to/kush05bhardwaj/scopeguard-local-a-local-first-ai-assistant-for-freelancers-fighting-scope-creep-36c2</link>
      <guid>https://dev.to/kush05bhardwaj/scopeguard-local-a-local-first-ai-assistant-for-freelancers-fighting-scope-creep-36c2</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-week2-2026-10-12"&gt;Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;ScopeGuard Local is an open-source, local-first AI tool that helps freelancers identify potential scope creep before a small client request turns into a much larger project.&lt;/p&gt;

&lt;p&gt;Freelancers often hear requests like “Could you also add a customer dashboard?” or “Can we include subscription payments?” after a project has already been agreed upon. These requests can introduce additional work, time, and costs, but figuring out whether they fit the original agreement isn't always straightforward.&lt;/p&gt;

&lt;p&gt;ScopeGuard Local helps freelance developers, designers, and small digital agencies compare new client requests against their project agreements.&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Upload an agreement:&lt;/strong&gt; Provide a UTF-8 text file or a PDF with selectable text.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Analyze a client request:&lt;/strong&gt; The local AI compares the new request with the agreement.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Review the evidence:&lt;/strong&gt; Get an explanation and supporting quotations from the original document.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Understand the result:&lt;/strong&gt; Requests are classified as in_scope, potential_scope_change, or needs_review.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Draft a change order:&lt;/strong&gt; Generate an editable proposal, with optional AI-assisted cost and timeline estimates.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Export the proposal:&lt;/strong&gt; Copy it or download it as Markdown or PDF.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The important part is that ScopeGuard doesn't just return an AI-generated verdict. It checks whether its evidence quotations actually appear in the submitted agreement and flags missing or invalid evidence for human review.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Who would pay for this?&lt;/em&gt; Freelancers, independent developers, designers, and small agencies who want to spend less time handling scope disputes and preparing change requests. The project is currently an open-source MVP, not a paid product.&lt;/p&gt;

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

&lt;p&gt;ScopeGuard Local currently runs on your own machine, with a React frontend, FastAPI backend, and local inference through Ollama.&lt;/p&gt;

&lt;p&gt;To try it, follow the setup instructions in the repository README. You'll need Python, Node.js, Ollama, and the Gemma 3 4B model.&lt;/p&gt;

&lt;p&gt;The repository includes synthetic sample agreements and requests that you can use to explore the workflow without uploading real client contracts.&lt;/p&gt;

&lt;p&gt;A hosted demo or video walkthrough is not currently linked here.&lt;br&gt;
&lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://drive.google.com/file/d/16Y4aY87tCD00s84w_cXLi-WX1psL66fL/view?usp=sharing" rel="noopener noreferrer" class="c-link"&gt;
            scopeguard.mp4 - Google Drive
          &lt;/a&gt;
        &lt;/h2&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fssl.gstatic.com%2Fdocs%2Fdoclist%2Fimages%2Fdrive_favicon_2026_32dp.png" width="32" height="32"&gt;
          drive.google.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


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

&lt;p&gt;&lt;strong&gt;GitHub repository:&lt;/strong&gt; &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/Kush05Bhardwaj" rel="noopener noreferrer"&gt;
        Kush05Bhardwaj
      &lt;/a&gt; / &lt;a href="https://github.com/Kush05Bhardwaj/ScopeGuard" rel="noopener noreferrer"&gt;
        ScopeGuard
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      A local-first assistant for comparing client requests with an agreed project scope.
    &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;ScopeGuard&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;ScopeGuard helps freelancers compare a new client request with a project
agreement, review the supporting passages, and prepare an editable change-order
proposal. The current workflow uses a local FastAPI service and Ollama by
default.&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;What works today&lt;/h2&gt;
&lt;/div&gt;

&lt;ul&gt;
&lt;li&gt;Upload UTF-8 &lt;code&gt;.txt&lt;/code&gt; agreements or text-based &lt;code&gt;.pdf&lt;/code&gt; agreements. PDF text keeps
page references. Uploads are parsed in memory; scanned PDFs are not OCR
processed.&lt;/li&gt;
&lt;li&gt;Compare a client request with the agreement using Ollama and Gemma 3 4B.&lt;/li&gt;
&lt;li&gt;Review one of three classifications: &lt;code&gt;in_scope&lt;/code&gt;
&lt;code&gt;potential_scope_change&lt;/code&gt;, or &lt;code&gt;needs_review&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Check the model's evidence quotations against the original agreement text
Missing or invented evidence requires human review. Exact quotations do not
prove that the model interpreted them correctly.&lt;/li&gt;
&lt;li&gt;Generate a change-order proposal from the validated analysis, edit it in the
browser, then copy it or download it as Markdown or PDF. The local model can
suggest rough costs and timelines for missing values…&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/Kush05Bhardwaj/ScopeGuard" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;br&gt;
ScopeGuard Local is open source under the MIT License.

&lt;p&gt;The repository includes the frontend, backend APIs, analysis and reporting services, automated backend tests, documentation, and synthetic sample data.&lt;/p&gt;

&lt;p&gt;Contributions, bug reports, and feedback are welcome!&lt;/p&gt;
&lt;h2&gt;
  
  
  How I Built It
&lt;/h2&gt;

&lt;p&gt;The application combines a web interface, a Python API, and an open-weight language model running locally.&lt;/p&gt;

&lt;p&gt;Technology stack:-&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Frontend:&lt;/strong&gt; React, Vite, and TypeScript&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backend:&lt;/strong&gt; Python and FastAPI&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local AI inference:&lt;/strong&gt; Ollama with Gemma 3 4B&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Document processing:&lt;/strong&gt; PyMuPDF for extracting text and page references from PDFs&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Validation:&lt;/strong&gt; Pydantic for structured request and response validation&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Exports:&lt;/strong&gt; Editable Markdown proposals and PDF downloads&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The core workflow follows five steps:-&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Extract text from the uploaded agreement.&lt;/li&gt;
&lt;li&gt;Send the agreement text and client's new request to the local model.&lt;/li&gt;
&lt;li&gt;Validate the model's structured response and check its evidence quotations against the source text.&lt;/li&gt;
&lt;li&gt;Generate a change-order draft based on the validated analysis.&lt;/li&gt;
&lt;li&gt;Let the freelancer review, edit, and export the result.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The model is treated as an untrusted component. If its output is malformed, evidence is missing, or the request is ambiguous, the application can require further review rather than presenting an unsupported conclusion as fact.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;ScopeGuard&lt;/strong&gt; can also ask the local model for rough cost and timeline suggestions when those details are missing. These suggestions and their assumptions need to be reviewed by the freelancer before sharing a proposal.&lt;/p&gt;

&lt;p&gt;The current version does not include OCR for scanned PDFs, persistent project history, authentication, or automatic client communication. It is deliberately focused on the core workflow.&lt;/p&gt;

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

&lt;p&gt;Open innovation matters here because a tool dealing with client agreements should give users control over how their documents are processed.&lt;/p&gt;

&lt;p&gt;By building around open-source components and a locally run open-weight model, ScopeGuard Local can operate without requiring a proprietary hosted AI API for its default inference workflow.&lt;/p&gt;

&lt;p&gt;That makes a few things possible:-&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;More control over documents:&lt;/strong&gt; Agreement text can remain on the user's machine when the application is configured to use local services.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Lower dependence on a hosted AI provider:&lt;/strong&gt; Users can run their own inference setup and configure a compatible Ollama model.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Inspectable implementation:&lt;/strong&gt; Developers can examine how prompts, evidence validation, API routes, and proposal generation work.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Room for community contributions:&lt;/strong&gt; Others can improve document parsing, model validation, accessibility, testing, and supported workflows.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Local-first operation is not an automatic privacy guarantee. Configuring services to use a remote host may send document contents to that host, and model-generated analysis can still be incorrect. Users should review results and avoid uploading confidential agreements to services they don't trust.&lt;/p&gt;

&lt;p&gt;For this project, open innovation is about more than using an open model. It is about making the workflow, its limitations, and its safeguards inspectable and improvable.&lt;/p&gt;

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

&lt;p&gt;Scope creep is a small problem that can become expensive over time. My goal with ScopeGuard Local is to give freelancers a practical starting point for evaluating new requests, finding relevant agreement text, and preparing clearer conversations about additional work.&lt;/p&gt;

&lt;p&gt;It's an MVP, and there is still plenty to improve. Feedback on the analysis workflow, evidence validation, usability, and local model support would be especially valuable.&lt;/p&gt;

&lt;p&gt;Try the project, explore the code, and let me know what you'd improve next!&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>RE-ALM — Turn Your Real World Into an RPG Adventure 🌍⚔️</title>
      <dc:creator>Kushagra Bhardwaj</dc:creator>
      <pubDate>Sun, 11 Oct 2026 13:30:10 +0000</pubDate>
      <link>https://dev.to/kush05bhardwaj/re-alm-turn-your-real-world-into-an-rpg-adventure-1nhb</link>
      <guid>https://dev.to/kush05bhardwaj/re-alm-turn-your-real-world-into-an-rpg-adventure-1nhb</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;What if going outside felt less like another item on your to-do list and more like starting a new anime adventure?&lt;br&gt;
That's the idea behind RE — an AI-powered, real-world RPG designed to turn everyday activities into quests, progress, and rewards.&lt;br&gt;
Instead of spending every gaming session in a virtual world, RE encourages players to explore the one they already live in. A walk, an outdoor activity, or a small personal challenge can become part of a larger adventure.&lt;/p&gt;

&lt;p&gt;The core gameplay loop combines three things:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AI-generated quests: An AI Game Master generates structured adventures rather than simply chatting with the player.&lt;/li&gt;
&lt;li&gt;EXP and progression: Completing quests contributes to player progression, including experience points, levels, and stats.&lt;/li&gt;
&lt;li&gt;Aether and summons: Players earn Aether through the game's reward system and spend it on summons, with rarity tiers ranging from R and SR to SSR and UR.&lt;/li&gt;
&lt;li&gt;Inventory and collection: Summoned rewards become part of the player's collection, giving progression a tangible in-game goal.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The idea is to make the phone a launchpad, not the destination. Players should be able to discover their next objective, head outside, complete it, and return to see their progress.&lt;/p&gt;

&lt;p&gt;RE is being developed as a phased project, with the current implementation focused on the core gameplay loop: player setup, AI quest generation, quest tracking, progression, the Aether economy, summons, and inventory.&lt;/p&gt;

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

&lt;p&gt;Live demo / video walkthrough: [&lt;a href="https://drive.google.com/file/d/1IZKfCaZ2hCK589dGUSmEYdJ7sf-gPa3j/view?usp=sharing" rel="noopener noreferrer"&gt;https://drive.google.com/file/d/1IZKfCaZ2hCK589dGUSmEYdJ7sf-gPa3j/view?usp=sharing&lt;/a&gt;]&lt;br&gt;
The demo should show the complete loop:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Open and view the player HUD.&lt;/li&gt;
&lt;li&gt;Generate an adventure with the AI Game Master.&lt;/li&gt;
&lt;li&gt;Start and complete a quest using the currently implemented verification flow.&lt;/li&gt;
&lt;li&gt;Claim the resulting progression rewards.&lt;/li&gt;
&lt;li&gt;Use Aether to perform a summon and view the result in the collection.
I want the demo to show not just the interface, but how the system connects AI-generated content to actual gameplay progression.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;GitHub repository: &lt;a href="https://github.com/Kush05Bhardwaj/Re-Alm" rel="noopener noreferrer"&gt;https://github.com/Kush05Bhardwaj/Re-Alm&lt;/a&gt;&lt;br&gt;
The project uses a monorepo structure with a Next.js frontend and a Python FastAPI backend. The backend handles gameplay APIs, AI quest generation, progression, the Aether ledger, summons, and inventory, with MongoDB used for persistence.&lt;/p&gt;

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

&lt;p&gt;The main technology choices are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Next.js, TypeScript, and Tailwind CSS for the web interface.&lt;/li&gt;
&lt;li&gt;Python and FastAPI for the backend APIs and gameplay logic.&lt;/li&gt;
&lt;li&gt;Gemma through Ollama for open-weight AI inference and AI-generated quests.&lt;/li&gt;
&lt;li&gt;MongoDB for player data, quests, progression, economy transactions, and collection state.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The important architectural decision was to treat the AI as a game-content generator, not just a chatbot.&lt;/p&gt;

&lt;p&gt;The AI Game Master is intended to produce structured quest data that the backend can validate and use in the gameplay system. That data connects to quest tracking, EXP and level progression, Aether rewards, and the summon and inventory systems.&lt;/p&gt;

&lt;p&gt;This separation matters: the model proposes the adventure, while application logic manages the player's state and rewards.&lt;/p&gt;

&lt;p&gt;The project has been implemented in phases so that the basic gameplay loop can be established before expanding into more advanced systems such as adaptive adventures, NPCs, classes, bosses, and persistent world events.&lt;/p&gt;

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

&lt;p&gt;For RE, open innovation matters because the AI Game Master is one of the core systems of the game.&lt;br&gt;
Using an open-weight model such as Gemma gives the project more flexibility than building the entire experience around a proprietary, hosted model API.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;First, local inference is an option. With Gemma running through Ollama, the model can be run locally on a suitably configured machine. That creates a path toward experimenting with AI-generated adventures without sending every prompt to a third-party inference service.&lt;/li&gt;
&lt;li&gt;Second, the model is not a permanent dependency. An open model-based architecture makes it easier to experiment with different models, compare their quest-generation quality, and adjust prompts and output validation as the game evolves.&lt;/li&gt;
&lt;li&gt;Third, experimentation becomes more accessible. An AI Game Master needs to generate useful, structured content consistently. Being able to experiment locally can make development more practical and avoid relying entirely on per-request hosted inference costs.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Open innovation also comes with real engineering responsibilities. A generated quest must be validated before it affects gameplay, and local inference does not automatically make every part of the application offline or private. RE still needs careful handling of quest safety, reward integrity, and player data.&lt;/p&gt;

&lt;p&gt;For me, the goal is to make AI-powered gameplay more customizable and approachable while keeping the actual game rules under the application's control.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's Next for RE:ALM?
&lt;/h2&gt;

&lt;p&gt;The current implementation covers the foundational gameplay loop through Phase 8, including AI-generated quests, progression, the Aether economy, summons, and inventory. But this is only the beginning.&lt;/p&gt;

&lt;p&gt;Here's what's planned next:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Adaptive Adventures &amp;amp; Discovery** — quests that adapt to player progress, difficulty, and discoveries.&lt;/li&gt;
&lt;li&gt;Deeper Immersion** — voice-based, screen-off gameplay, NPC interactions, abilities, and character classes.&lt;/li&gt;
&lt;li&gt;World Building** — multiple realms, bosses, exploration, fog of war, and dynamic world events.&lt;/li&gt;
&lt;li&gt;Social &amp;amp; Persistent Worlds** — parties, guilds, leaderboards, an improved economy, and AI-driven storylines.&lt;/li&gt;
&lt;li&gt;Advanced Immersion** — richer audio experiences, wearables, and future AR/VR exploration.&lt;/li&gt;
&lt;li&gt;Reliability &amp;amp; Release** — security, privacy, testing, UI polish, mobile/PWA improvements, analytics, and deployment.&lt;/li&gt;
&lt;li&gt;Documentation &amp;amp; Beyond** — complete documentation, challenge submission, a clearly defined MVP, and the long-term roadmap.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;RE:ALM is being built incrementally. The goal isn't to add every feature at once, but to create a reliable core experience before expanding the world.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final Thought
&lt;/h2&gt;

&lt;p&gt;The world already has enough screens competing for our attention. What if technology helped us engage with the world instead?&lt;/p&gt;

&lt;p&gt;RE is my attempt to explore that idea through AI, RPG progression, and real-world quests.&lt;/p&gt;

&lt;p&gt;Your reality. Your realm. Your adventure.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>I Built an AI That Turns My Friend's Voice Notes Into Searchable Memories</title>
      <dc:creator>Kushagra Bhardwaj</dc:creator>
      <pubDate>Sun, 04 Oct 2026 17:12:38 +0000</pubDate>
      <link>https://dev.to/kush05bhardwaj/i-built-an-ai-that-turns-my-friends-voice-notes-into-searchable-memories-mld</link>
      <guid>https://dev.to/kush05bhardwaj/i-built-an-ai-that-turns-my-friends-voice-notes-into-searchable-memories-mld</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-weekend-2026-10-01"&gt;Hacktoberfest Weekend Challenge: Build for a Friend&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;My friend sends a lot of voice messages.&lt;br&gt;
The problem isn't receiving them. The problem is remembering what was actually said later.&lt;br&gt;
A voice note might contain a task, a person's name, a plan for next week, an important date, or something that needs to be done later.&lt;br&gt;
But once the conversation gets buried under dozens of other messages, finding that information again becomes surprisingly difficult.&lt;br&gt;
So I built Voice → Life.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Voice → Life turns voice messages into structured, searchable memories using open-source tools, an open-weight language model, and local AI inference.
Instead of manually listening through old voice notes, you can give Voice → Life a recording and let it:
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Voice Note
    ↓
Speech-to-Text
    ↓
AI Understanding
    ↓
Memory Extraction
    ↓
SQLite
    ↓
Timeline / Search / Questions
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;For example, a voice note like:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;"Kal 11 baje Rahul ko internship ke documents bhej dena. Aur Monday ko uska interview hai."
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;can become memories such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Task: Send internship documents&lt;/li&gt;
&lt;li&gt;Person: Rahul&lt;/li&gt;
&lt;li&gt;Time: 11:00&lt;/li&gt;
&lt;li&gt;Event: Interview&lt;/li&gt;
&lt;li&gt;Person: Rahul&lt;/li&gt;
&lt;li&gt;Date: Monday&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And instead of remembering which voice note contained the information, you can ask:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;"What did I need to send Rahul?"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;and Voice → Life answers using the stored memories.&lt;/p&gt;
&lt;h2&gt;
  
  
  Why I built it
&lt;/h2&gt;

&lt;p&gt;I wanted to build something that solves an actual everyday problem for a friend, rather than making another generic chatbot.&lt;br&gt;
Voice messages are convenient for communicating.&lt;br&gt;
They're terrible as a database.&lt;br&gt;
Voice → Life is my attempt to bridge that gap.&lt;/p&gt;
&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Demo Video:&lt;/strong&gt; &lt;a href="https://drive.google.com/file/d/18HTWVgH5B1oJxqPePSpBBwUPjxsMUMNs/view?usp=sharing" rel="noopener noreferrer"&gt;Watch the Voice → Life demo&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The demo shows the complete flow:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Upload a voice message&lt;/li&gt;
&lt;li&gt;Transcribe it&lt;/li&gt;
&lt;li&gt;Let the AI understand the transcript&lt;/li&gt;
&lt;li&gt;Extract useful memories&lt;/li&gt;
&lt;li&gt;Store them&lt;/li&gt;
&lt;li&gt;View them on the timeline&lt;/li&gt;
&lt;li&gt;Search memories&lt;/li&gt;
&lt;li&gt;Ask questions about them&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;

&lt;p&gt;The complete project is open source:&lt;br&gt;
GitHub:&lt;br&gt;
&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/Kush05Bhardwaj" rel="noopener noreferrer"&gt;
        Kush05Bhardwaj
      &lt;/a&gt; / &lt;a href="https://github.com/Kush05Bhardwaj/Voice-Life" rel="noopener noreferrer"&gt;
        Voice-Life
      &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;🎙️ Voice → Life&lt;/h1&gt;
&lt;/div&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Turn your voice into useful memories.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Voice → Life is an open-source, local-first AI application that transforms voice notes into &lt;strong&gt;structured, searchable memories and actionable information&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Instead of letting important information get buried inside voice recordings, Voice → Life uses open-source AI to understand what was said, extract useful information, and let the user decide what should be remembered.&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;p&gt;Give Voice → Life a voice note like:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Bro kal 11 baje Rahul ko internship ke documents bhej dena. Aur usko bol dena ki interview Monday ko hai."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It can turn that into:&lt;/p&gt;

&lt;div class="snippet-clipboard-content notranslate position-relative overflow-auto"&gt;&lt;pre class="notranslate"&gt;&lt;code&gt;🔔 Task
Send internship documents

👤 Person
Rahul

📅 Event
Interview — Monday
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;The user can review the extracted information and choose what to save.&lt;/p&gt;
&lt;p&gt;Later:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;"What did I need to send Rahul?"&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Voice → Life can retrieve the relevant memory.&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🎯 Core Idea&lt;/h2&gt;

&lt;/div&gt;

&lt;div class="snippet-clipboard-content notranslate position-relative overflow-auto"&gt;
&lt;pre class="notranslate"&gt;&lt;code&gt;🎙 Voice
   ↓
📝 Transcription&lt;/code&gt;&lt;/pre&gt;…&lt;/div&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/Kush05Bhardwaj/Voice-Life" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;&lt;br&gt;&lt;br&gt;
The project is built so that the core AI pipeline can run locally rather than depending on a proprietary AI API.&lt;/p&gt;

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

&lt;p&gt;The stack is intentionally simple.&lt;/p&gt;

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



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;┌──────────────────────┐
│      Frontend        │
│ Next.js + TypeScript │
└──────────┬───────────┘
           │
           ▼
┌──────────────────────┐
│       FastAPI        │
│      Backend         │
└──────────┬───────────┘
           │
           ▼
┌──────────────────────┐
│    faster-whisper    │
│   Speech-to-Text     │
└──────────┬───────────┘
           │
           ▼
┌──────────────────────┐
│ Ollama + Open Model  │
│   AI Understanding   │
└──────────┬───────────┘
           │
           ▼
┌──────────────────────┐
│ Memory Extraction    │
└──────────┬───────────┘
           │
           ▼
┌──────────────────────┐
│       SQLite         │
└──────────┬───────────┘
           │
           ▼
    Timeline / Search
        / Q&amp;amp;A
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  Speech-to-Text
&lt;/h4&gt;

&lt;p&gt;For transcription, I use faster-whisper.&lt;br&gt;
This became particularly interesting when I started testing the project with real voice messages.&lt;br&gt;
Normal benchmark-style English isn't the only thing a personal assistant needs to understand.&lt;br&gt;
Real people mix languages.&lt;br&gt;
My voice-note tests included Hinglish (Hindi + English) and code-switched speech, which exposed weaknesses in the initial lightweight Whisper configuration.&lt;br&gt;
That forced me to treat transcription quality as an actual engineering problem rather than assuming:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;audio → text = solved.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  Open-Weight AI
&lt;/h4&gt;

&lt;p&gt;The understanding layer uses an open-weight language model through Ollama.&lt;br&gt;
The model receives the transcript and extracts useful information such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;tasks&lt;/li&gt;
&lt;li&gt;events&lt;/li&gt;
&lt;li&gt;people&lt;/li&gt;
&lt;li&gt;places&lt;/li&gt;
&lt;li&gt;plans&lt;/li&gt;
&lt;li&gt;facts&lt;/li&gt;
&lt;li&gt;reminders
The model is explicitly instructed not to invent information that isn't present in the transcript.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;
  
  
  Memory Storage
&lt;/h4&gt;

&lt;p&gt;The extracted information is stored in SQLite.&lt;br&gt;
I deliberately didn't start with a complicated vector database or large RAG pipeline.&lt;br&gt;
For the MVP, structured memories are enough.&lt;br&gt;
That also keeps the project easy to run and understand.&lt;/p&gt;
&lt;h4&gt;
  
  
  Asking Your Memories
&lt;/h4&gt;

&lt;p&gt;The final layer lets users ask natural-language questions about their memories.&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;"What did I need to send Rahul?"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The relevant stored memories are passed to the language model, which generates the answer.&lt;br&gt;
The model isn't supposed to make up an answer when the information isn't present.&lt;/p&gt;
&lt;h2&gt;
  
  
  Why Does Open Innovation Matter?
&lt;/h2&gt;



&lt;p&gt;This project deals with something much more personal than a normal chatbot:&lt;br&gt;
&lt;strong&gt;people's voice messages&lt;/strong&gt;&lt;br&gt;
Voice notes can contain conversations, names, plans, schedules, personal information and things people simply don't want uploaded somewhere else.&lt;br&gt;
That's one of the reasons open-source AI mattered to me while building Voice → Life.&lt;br&gt;
The core AI components can run locally:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;faster-whisper handles speech recognition&lt;/li&gt;
&lt;li&gt;Ollama provides local model inference&lt;/li&gt;
&lt;li&gt;an open-weight LLM handles understanding&lt;/li&gt;
&lt;li&gt;SQLite stores the memories locally
That changes the relationship between the user and the AI.
Instead of:
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;My private voice
       ↓
Third-party API
       ↓
AI service
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;the goal is:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;My private voice
       ↓
My machine
       ↓
Open AI models
       ↓
My memories
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Open models also give developers much more freedom to experiment.&lt;br&gt;
If transcription isn't good enough for Hinglish, I can change the model or configuration.&lt;br&gt;
If the language model isn't performing well, I can replace it.&lt;br&gt;
I'm not locked into one proprietary API or one provider's ecosystem.&lt;br&gt;
For a project built around personal memories, that control matters.&lt;/p&gt;

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

&lt;p&gt;The biggest lesson from this project was that building an AI application isn't just about putting an LLM in the middle of an architecture.&lt;br&gt;
The interesting problems appeared at the boundaries:&lt;br&gt;
Audio → Speech&lt;br&gt;
Is the transcription actually accurate?&lt;br&gt;
Speech → Meaning&lt;br&gt;
Can the model distinguish a task from casual conversation?&lt;br&gt;
Meaning → Memory&lt;br&gt;
What information is actually worth keeping?&lt;br&gt;
Memory → Answer&lt;br&gt;
Can the system answer a question without hallucinating?&lt;br&gt;
And most importantly:&lt;br&gt;
Does the final result solve the original person's problem?&lt;br&gt;
That's what I wanted to explore with Voice → Life.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's Next?
&lt;/h2&gt;

&lt;p&gt;The current version is intentionally an MVP.&lt;br&gt;
Some ideas for future versions include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;better multilingual and Hinglish support&lt;/li&gt;
&lt;li&gt;WhatsApp voice-message integration&lt;/li&gt;
&lt;li&gt;task/reminder generation&lt;/li&gt;
&lt;li&gt;notifications&lt;/li&gt;
&lt;li&gt;stronger semantic search&lt;/li&gt;
&lt;li&gt;local-first privacy controls&lt;/li&gt;
&lt;li&gt;better confirmation/editing before memories are saved
But I intentionally stopped the first version before turning it into a giant AI assistant.
The core idea had to work first.
Voice in → useful memory out.&lt;/li&gt;
&lt;/ul&gt;

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