<?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: PRATEEK BISHT</title>
    <description>The latest articles on DEV Community by PRATEEK BISHT (@prateekbisht23).</description>
    <link>https://dev.to/prateekbisht23</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%2F3389289%2F2b89204d-4f5a-4540-bf9a-21188a7d5b01.png</url>
      <title>DEV Community: PRATEEK BISHT</title>
      <link>https://dev.to/prateekbisht23</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/prateekbisht23"/>
    <language>en</language>
    <item>
      <title>Noted AI: A Local-First, Privacy-Preserving AI Note Assistant</title>
      <dc:creator>PRATEEK BISHT</dc:creator>
      <pubDate>Fri, 02 Oct 2026 19:59:19 +0000</pubDate>
      <link>https://dev.to/prateekbisht23/noted-ai-a-local-first-privacy-preserving-ai-note-assistant-4gl5</link>
      <guid>https://dev.to/prateekbisht23/noted-ai-a-local-first-privacy-preserving-ai-note-assistant-4gl5</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the Hacktoberfest Weekend Challenge: Build for a Friend&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;I built &lt;strong&gt;Noted AI&lt;/strong&gt; ("Your thoughts, organized by AI. Your notes, under your control.") for my friend, who is currently managing a packed schedule of university lectures, academic study sessions, and team project meetings.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Problem It Solves
&lt;/h3&gt;

&lt;p&gt;My friend constantly ran into three major friction points:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Scattered, Messy Inputs:&lt;/strong&gt; Information was coming in from everywhere—spoken lectures, raw audio voice recordings, slide deck PDFs, and quickly typed scratch notes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cognitive Overload &amp;amp; Manual Revision:&lt;/strong&gt; Manually combing through hour-long lecture transcripts or 30-page slide PDFs to extract key definitions, action items, and flashcard revision questions was consuming hours of valuable study time.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Privacy Concerns &amp;amp; API Paywalls:&lt;/strong&gt; Commercial AI note apps require recurring monthly subscriptions ($15–$25/month) and send private voice recordings and proprietary course materials to third-party cloud servers.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  What Noted AI Does
&lt;/h3&gt;

&lt;p&gt;Noted AI is a local, privacy-first personal AI note assistant designed specifically around my friend's workflow:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Instant AI Summarization:&lt;/strong&gt; In one click, local AI extracts a concise executive summary, bulleted key takeaways, important terminology, and actionable next steps—without altering or overwriting the original notes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Voice-to-Notes:&lt;/strong&gt; Upload spoken audio recordings (&lt;code&gt;.mp3&lt;/code&gt;, &lt;code&gt;.wav&lt;/code&gt;, &lt;code&gt;.m4a&lt;/code&gt;). Noted AI transcribes them locally and automatically structures stream-of-consciousness speech into clean notes with clear headings and summaries.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;PDF-to-Notes:&lt;/strong&gt; Upload slide decks and reading materials. Noted AI extracts digital text and generates structured study guides while detecting scanned/image-only documents.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Strict Note-Scoped Q&amp;amp;A:&lt;/strong&gt; A dedicated Q&amp;amp;A assistant scoped strictly to the active note. If a fact isn't present in the note, the AI explicitly states that rather than hallucinating an answer.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Interactive AI Revision Quiz:&lt;/strong&gt; Generates a 5-question multiple-choice revision test with an interactive in-browser quiz runner, instant scoring, and explanation cards for active recall practice.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;The entire codebase is open-source and available on GitHub:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;song-code-won / noted-ai&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Noted AI: A Personal AI Note-Taking Assistant powered by local open-weight AI (Gemma 3 &amp;amp; faster-whisper). Built for Hacktoberfest 2026.&lt;/p&gt;
&lt;h3&gt;
  
  
  Noted AI — A Personal AI Note-Taking Assistant
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Tagline:&lt;/strong&gt; Your thoughts, organized by AI. Your notes, under your control.&lt;br&gt;
Built for the Hacktoberfest 2026 DEV Challenge — Build for a Friend.&lt;/p&gt;

&lt;p&gt;Python 3.11+ · FastAPI · Ollama · Speech-to-Text · License: MIT&lt;/p&gt;
&lt;h4&gt;
  
  
  1. Project Overview
&lt;/h4&gt;

&lt;p&gt;Noted AI is a lightweight, simple, and functional AI-powered note-taking application designed to capture, organize, summarize, and retrieve knowledge effortlessly.&lt;/p&gt;

&lt;p&gt;Rather than being another generic AI chat wrapper, Noted AI is engineered as an active cognitive assistant that converts raw thoughts, recorded audio, and PDF documents into clean, structured notes—running 100% locally using open-weight AI models.&lt;/p&gt;
&lt;h4&gt;
  
  
  2. The Problem &amp;amp; Who It Is Built For
&lt;/h4&gt;

&lt;p&gt;&lt;strong&gt;The Friend &amp;amp; The Use Case&lt;/strong&gt;&lt;br&gt;
This project was built for my friend, who is actively balancing intense study sessions, university lectures, and collaborative team meetings.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Pain Points&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Scattered Information:&lt;/strong&gt; Information arrives in unpredictable formats—spoken audio from lectures, lecture slide PDFs, and messy quick thoughts.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cognitive Overload:&lt;/strong&gt; Manually reading…&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Repository:&lt;/strong&gt; &lt;a href="https://github.com/prateekbisht23/noted-ai" rel="noopener noreferrer"&gt;GitHub Repository&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Tech Stack Overview
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Backend:&lt;/strong&gt; Python 3.11+, FastAPI, Uvicorn&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local Open-Weight LLM:&lt;/strong&gt; Google Gemma 3 (&lt;code&gt;gemma3:1b&lt;/code&gt; / &lt;code&gt;gemma3:4b&lt;/code&gt;) running locally via Ollama&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Speech-to-Text:&lt;/strong&gt; faster-whisper (CTranslate2) running locally on CPU&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Document Processing:&lt;/strong&gt; PyMuPDF (&lt;code&gt;pymupdf&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Database:&lt;/strong&gt; SQLite with Write-Ahead Logging (WAL) mode for persistent storage&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Frontend:&lt;/strong&gt; Clean, responsive HTML5 / CSS3 / Vanilla JavaScript dashboard with split-view editor&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Testing &amp;amp; Containerization:&lt;/strong&gt; 19 automated Pytest cases, &lt;code&gt;Dockerfile&lt;/code&gt;, and &lt;code&gt;docker-compose.yml&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

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

&lt;h3&gt;
  
  
  1. Open-Weight AI Architecture with Ollama &amp;amp; Gemma 3
&lt;/h3&gt;

&lt;p&gt;Rather than calling commercial cloud APIs like OpenAI or Anthropic, Noted AI's core intelligence is powered by Gemma 3 running locally through Ollama (&lt;code&gt;http://localhost:11434&lt;/code&gt;).&lt;/p&gt;

&lt;p&gt;We designed a dedicated &lt;code&gt;AIService&lt;/code&gt; module that handles:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Structured prompt formatting for key-point and action-item extraction.&lt;/li&gt;
&lt;li&gt;Strict anti-hallucination prompting for the Q&amp;amp;A engine so answers remain grounded only in the user's note.&lt;/li&gt;
&lt;li&gt;JSON-formatted output parsing with robust regex fallbacks for 5-question MCQ generation.&lt;/li&gt;
&lt;li&gt;Dynamic fallback error reporting with actionable troubleshooting instructions if Ollama is paused or the model needs to be pulled.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Local Speech-to-Text with faster-whisper
&lt;/h3&gt;

&lt;p&gt;For voice recordings, we integrated faster-whisper, an optimized CTranslate2 reimplementation of OpenAI's Whisper model. By utilizing the quantized &lt;code&gt;tiny&lt;/code&gt; or &lt;code&gt;base&lt;/code&gt; weights on CPU, Noted AI transcribes audio files up to 4x faster than standard PyTorch models with minimal memory overhead, followed by an automatic Gemma 3 structuring pass.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. PDF Parsing with PyMuPDF
&lt;/h3&gt;

&lt;p&gt;Text from multi-page PDFs is extracted directly using PyMuPDF. We implemented automated character-density detection so that if my friend uploads a scanned or image-only document, Noted AI flags it immediately and prompts for a digital PDF rather than failing silently.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Zero Data Loss with SQLite WAL
&lt;/h3&gt;

&lt;p&gt;To ensure notes survive system crashes and restarts without requiring a bulky database server, notes and AI summaries are stored persistently in a local SQLite database configured with &lt;code&gt;PRAGMA journal_mode=WAL;&lt;/code&gt; and indexed by modification timestamps.&lt;/p&gt;

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

&lt;p&gt;Building Noted AI with open-weight models and open-source tooling demonstrated why open innovation is critical for real-world personal software:&lt;/p&gt;

&lt;h3&gt;
  
  
  Complete Data Sovereignty &amp;amp; Privacy
&lt;/h3&gt;

&lt;p&gt;Personal thoughts, course notes, and voice recordings never leave the laptop. For students and professionals dealing with confidential lectures, proprietary team discussions, or sensitive research, closed cloud APIs represent an unacceptable privacy trade-off. With Gemma 3 and faster-whisper, inference happens 100% on localhost.&lt;/p&gt;

&lt;h3&gt;
  
  
  Democratizing Accessibility (Zero Subscription Barriers)
&lt;/h3&gt;

&lt;p&gt;My friend shouldn't have to budget $20/month just to summarize study notes or prepare for an exam. Open models turn consumer laptops into self-sufficient AI workstations without credit card requirements or surprise monthly billing.&lt;/p&gt;

&lt;h3&gt;
  
  
  True Model Flexibility
&lt;/h3&gt;

&lt;p&gt;Because the system communicates with Ollama through open standards, my friend isn't locked into a single provider. With a single environment variable change, the model can switch between &lt;code&gt;gemma3:1b&lt;/code&gt; for battery conservation on an airplane, &lt;code&gt;gemma3:4b&lt;/code&gt; for deep revision, or open models like &lt;code&gt;llama3&lt;/code&gt; or &lt;code&gt;mistral&lt;/code&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Auditability and Transparency
&lt;/h3&gt;

&lt;p&gt;Every prompt, processing pipeline, and storage schema is open and verifiable. There are no black-box system prompts or hidden telemetry collecting personal data.&lt;/p&gt;

&lt;h2&gt;
  
  
  Real User Feedback (From My Friend)
&lt;/h2&gt;

&lt;p&gt;After testing Noted AI with actual course materials and lecture recordings on an Intel i7 laptop (16GB RAM):&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"The voice-to-notes workflow saved me nearly half an hour after a two-hour lecture. Instead of re-listening to messy audio, having the transcript cleaned up with headings and action items in one place made review instantaneous.&lt;/p&gt;

&lt;p&gt;The revision quiz was surprisingly fun and accurate—it asked questions about the exact concepts covered in the notes rather than generic trivia."&lt;/p&gt;
&lt;/blockquote&gt;

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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Primary Track:&lt;/strong&gt; Build for a Friend&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Open-Source AI / Open-Weight Model Track:&lt;/strong&gt; Powered by Google Gemma 3 via Ollama &amp;amp; faster-whisper&lt;/li&gt;
&lt;/ul&gt;

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