<?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: Daksh Jhala</title>
    <description>The latest articles on DEV Community by Daksh Jhala (@daksh_jhala_fa25c6207cbb5).</description>
    <link>https://dev.to/daksh_jhala_fa25c6207cbb5</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%2F4154422%2Fadc4adb6-39e3-49c9-9fa1-c18b349444d1.png</url>
      <title>DEV Community: Daksh Jhala</title>
      <link>https://dev.to/daksh_jhala_fa25c6207cbb5</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/daksh_jhala_fa25c6207cbb5"/>
    <language>en</language>
    <item>
      <title>Between Us — A Private AI Memory Companion for Two</title>
      <dc:creator>Daksh Jhala</dc:creator>
      <pubDate>Sun, 04 Oct 2026 21:07:07 +0000</pubDate>
      <link>https://dev.to/daksh_jhala_fa25c6207cbb5/between-us-a-private-ai-memory-companion-for-two-31n4</link>
      <guid>https://dev.to/daksh_jhala_fa25c6207cbb5/between-us-a-private-ai-memory-companion-for-two-31n4</guid>
      <description>&lt;p&gt;What I Built&lt;/p&gt;

&lt;p&gt;Between Us is a private AI-powered memory companion that I built for someone I love in a long-distance relationship.&lt;/p&gt;

&lt;p&gt;When you're in a long-distance relationship, small moments can easily get lost between chats, calls, photos, and voice notes. I wanted to build something that could preserve those moments and make them easy to revisit later.&lt;/p&gt;

&lt;p&gt;Between Us lets us:&lt;/p&gt;

&lt;p&gt;Save shared memories with titles, dates, and memory types.&lt;/p&gt;

&lt;p&gt;Attach photos directly to memories.&lt;/p&gt;

&lt;p&gt;Keep a separate private photo gallery.&lt;/p&gt;

&lt;p&gt;Organize memories into a visual timeline.&lt;/p&gt;

&lt;p&gt;Record/upload voice memories and automatically transcribe them.&lt;/p&gt;

&lt;p&gt;Use AI to turn voice transcripts into structured memories.&lt;/p&gt;

&lt;p&gt;Ask natural-language questions about our past memories.&lt;/p&gt;

&lt;p&gt;Retrieve relevant memories using semantic search and embeddings.&lt;/p&gt;

&lt;p&gt;Instead of just being another notes app, the goal was to make the memories searchable, understandable, and meaningful.&lt;/p&gt;

&lt;p&gt;Demo&lt;/p&gt;

&lt;p&gt;🎥 Video Demo: &lt;a href="https://youtu.be/b5Wcp2oPJsw" rel="noopener noreferrer"&gt;https://youtu.be/b5Wcp2oPJsw&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The demo shows the main flow of Between Us, including adding memories, attaching photos, viewing the timeline, using the photo gallery, asking AI questions, and creating memories from voice notes.&lt;/p&gt;

&lt;p&gt;Code&lt;/p&gt;

&lt;p&gt;💻 GitHub Repository: &lt;a href="https://github.com/DakshSinghUAI/between-us" rel="noopener noreferrer"&gt;https://github.com/DakshSinghUAI/between-us&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The project is built as a full-stack application with a React frontend and FastAPI backend.&lt;/p&gt;

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

&lt;p&gt;The core of Between Us is built around open-source AI and local inference.&lt;/p&gt;

&lt;p&gt;AI Stack&lt;/p&gt;

&lt;p&gt;Ollama — local AI inference&lt;/p&gt;

&lt;p&gt;Qwen 2.5 7B — used for understanding memories, answering questions, and extracting structured memories from voice transcripts&lt;/p&gt;

&lt;p&gt;Whisper — used for speech-to-text transcription&lt;/p&gt;

&lt;p&gt;nomic-embed-text — used to generate embeddings for semantic memory retrieval&lt;/p&gt;

&lt;p&gt;Application Stack&lt;/p&gt;

&lt;p&gt;React + Vite — frontend&lt;/p&gt;

&lt;p&gt;FastAPI + Python — backend&lt;/p&gt;

&lt;p&gt;SQLite — memory storage&lt;/p&gt;

&lt;p&gt;SQLModel — database models&lt;/p&gt;

&lt;p&gt;Embeddings + cosine similarity — memory retrieval&lt;/p&gt;

&lt;p&gt;Lucide React + Motion — interface and animations&lt;/p&gt;

&lt;p&gt;The AI memory flow works roughly like this:&lt;/p&gt;

&lt;p&gt;Voice Note → Whisper → Transcript → Qwen → Structured Memory → Embedding → SQLite&lt;/p&gt;

&lt;p&gt;And when asking a question:&lt;/p&gt;

&lt;p&gt;Question → Embedding → Relevant Memories → Qwen → Answer&lt;/p&gt;

&lt;p&gt;The AI is also instructed not to invent information. If a detail wasn't recorded in the retrieved memories, it should say that the information wasn't recorded rather than making something up.&lt;/p&gt;

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

&lt;p&gt;Privacy is especially important for this project because the memories stored in Between Us can be very personal.&lt;/p&gt;

&lt;p&gt;Using local open-source AI means the core AI processing can happen on my own computer instead of requiring every private memory to be sent to a closed third-party AI API.&lt;/p&gt;

&lt;p&gt;With Ollama and an open-weight model like Qwen, I can:&lt;/p&gt;

&lt;p&gt;Run the AI locally.&lt;/p&gt;

&lt;p&gt;Keep personal memories under my control.&lt;/p&gt;

&lt;p&gt;Experiment with different models.&lt;/p&gt;

&lt;p&gt;Change the AI behaviour and prompts myself.&lt;/p&gt;

&lt;p&gt;Build without depending on a paid proprietary AI API for the core functionality.&lt;/p&gt;

&lt;p&gt;Continue developing even when an external AI service isn't available.&lt;/p&gt;

&lt;p&gt;For this project, open innovation isn't just about avoiding an API cost. It gives me more control over privacy, models, experimentation, and how the AI interacts with personal data.&lt;/p&gt;

&lt;p&gt;That made local open-source AI a natural fit for something as personal as Between Us.&lt;/p&gt;

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

&lt;p&gt;Optional — I did not use DevRelay for this project.&lt;/p&gt;

&lt;p&gt;Prize Categories&lt;/p&gt;

&lt;p&gt;I am not entering any partner-specific prize category.&lt;/p&gt;

&lt;p&gt;The project is being submitted for the overall Hacktoberfest Weekend Challenge: Build for a Friend.&lt;/p&gt;

&lt;h1&gt;
  
  
  devchallenge #weekendchallenge #hf26challenge
&lt;/h1&gt;

&lt;p&gt;&amp;lt;!-- Thanks for participating --!&amp;gt;&lt;/p&gt;

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