<?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: Sumit Das</title>
    <description>The latest articles on DEV Community by Sumit Das (@codebysumit).</description>
    <link>https://dev.to/codebysumit</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%2F4151399%2F457c55da-c811-46fc-a54c-87d23ed63929.png</url>
      <title>DEV Community: Sumit Das</title>
      <link>https://dev.to/codebysumit</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/codebysumit"/>
    <language>en</language>
    <item>
      <title>EchoNote AI: I Built an Offline Lecture Notes App for My Friend</title>
      <dc:creator>Sumit Das</dc:creator>
      <pubDate>Sun, 04 Oct 2026 06:01:54 +0000</pubDate>
      <link>https://dev.to/codebysumit/echonote-ai-i-built-an-offline-lecture-notes-app-for-my-friend-8hn</link>
      <guid>https://dev.to/codebysumit/echonote-ai-i-built-an-offline-lecture-notes-app-for-my-friend-8hn</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;I built &lt;strong&gt;EchoNote AI&lt;/strong&gt; for my friend &lt;strong&gt;Anshumita Ray&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Anshumita records her college professor's lecture on her phone during class. She does this because she cannot catch everything in real time. Sometimes a side conversation distracts her. Sometimes she forgets an important word, or misses a whole part of the lesson. Later, she has to listen to hours of audio again just to write her notes.&lt;/p&gt;

&lt;p&gt;EchoNote AI fixes this. She uploads her recording or records live in the browser. The app writes the full transcript, then makes a clean summary with key definitions and exam questions. If she forgot something, she can ask the AI a question about the lecture and get an answer based only on what the professor said.&lt;/p&gt;

&lt;p&gt;It runs fully on a normal laptop. No API keys. No internet after setup. Her notes are stored in an encrypted local database on her own device.&lt;/p&gt;

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

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

&lt;h2&gt;
  
  
  Code
&lt;/h2&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/codebysumit" rel="noopener noreferrer"&gt;
        codebysumit
      &lt;/a&gt; / &lt;a href="https://github.com/codebysumit/echonote-ai" rel="noopener noreferrer"&gt;
        echonote-ai
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
       hf26-dev-challenge-1
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;&lt;div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;🎙️ EchoNote AI&lt;/h1&gt;
&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;&lt;em&gt;Your audio. Transcribed. Understood. Remembered.&lt;/em&gt;&lt;/h3&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;100% Local CPU · No API Keys · AES-256 Encrypted · Offline-First&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://python.org" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/68a57989f114cf08c44ed2197bca2fc6a5ee4599a6d81b5b63940710c54cc647/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f507974686f6e2d332e31302532422d626c75653f7374796c653d666c61742d737175617265266c6f676f3d707974686f6e" alt="Python"&gt;&lt;/a&gt;
&lt;a href="https://fastapi.tiangolo.com" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/bdb7910ef57eb4da8a7002670e06a5cece70d2ab9e7bdd662a914d6151f3b184/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f466173744150492d302e3131302532422d3030393638383f7374796c653d666c61742d737175617265266c6f676f3d66617374617069" alt="FastAPI"&gt;&lt;/a&gt;
&lt;a href="https://github.com/SYSTRAN/faster-whisper" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/03a56331e8a3ff8287229cb95dce394f8dfe84fcc25828a6d79f6fbc104aabec/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f576869737065722d6661737465722d2d776869737065722532304350552d6f72616e67653f7374796c653d666c61742d737175617265" alt="Whisper"&gt;&lt;/a&gt;
&lt;a href="https://huggingface.co/unsloth/gemma-3-1b-it-GGUF" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/d67068437456592d864bb03fcc42c00c963cc563899f5dc9b0f752e391119c77/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f47656d6d612d332532303142253230474755462532304350552d626c756576696f6c65743f7374796c653d666c61742d737175617265" alt="Gemma"&gt;&lt;/a&gt;
&lt;a href="https://github.com/codebysumit/echonote-ai/LICENSE" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/152aa2a37725b9fd554b28ff24d270f6071c67927a63e6d635a55c8e188e20c7/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4d49542d677265656e3f7374796c653d666c61742d737175617265" alt="License"&gt;&lt;/a&gt;
&lt;a href="https://youtu.be/ylCl8rsBIuw" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/cfdc4d10e8cfb6a04d9e1705c120d6cab0c7ea96036e624b74730b4e83ff5eb6/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f44656d6f2d596f75547562652d7265643f7374796c653d666c61742d737175617265266c6f676f3d796f7574756265" alt="Demo"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://youtu.be/ylCl8rsBIuw" rel="nofollow noopener noreferrer"&gt;&lt;strong&gt;Watch Demo&lt;/strong&gt;&lt;/a&gt; · &lt;a href="https://github.com/codebysumit/echonote-ai#-features" rel="noopener noreferrer"&gt;&lt;strong&gt;Features&lt;/strong&gt;&lt;/a&gt; · &lt;a href="https://github.com/codebysumit/echonote-ai#-installation" rel="noopener noreferrer"&gt;&lt;strong&gt;Setup&lt;/strong&gt;&lt;/a&gt; · &lt;a href="https://github.com/codebysumit/echonote-ai#%EF%B8%8F-deploy-on-render" rel="noopener noreferrer"&gt;&lt;strong&gt;Deploy&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🧠 What is EchoNote AI?&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;EchoNote AI&lt;/strong&gt; is a professional, Claude &amp;amp; NotebookLM-inspired &lt;strong&gt;audio intelligence studio&lt;/strong&gt; that converts any recording into structured, encrypted notes — all running entirely on your own laptop CPU, with zero API keys and zero internet dependency after setup.&lt;/p&gt;
&lt;p&gt;Designed for &lt;strong&gt;college students, school kids, teachers, working professionals, recipe keepers, and voice note creators&lt;/strong&gt;.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Upload a lecture. EchoNote AI transcribes it, detects what it is, writes you a tailored summary with exam questions, and lets you chat with Gemma AI about its content — forever stored privately in your encrypted local database.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🎬 Demo&lt;/h2&gt;

&lt;/div&gt;
&lt;p&gt;Watch EchoNote AI in action:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://youtu.be/ylCl8rsBIuw" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/4fce71dfa11bc431e02b31e7b5eef7ce88204c4ca174a64480307125626b7c0e/68747470733a2f2f696d672e796f75747562652e636f6d2f76692f796c436c387273424975772f687164656661756c742e6a7067" alt="EchoNote AI Demo"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;▶️ &lt;strong&gt;&lt;a href="https://youtu.be/ylCl8rsBIuw" rel="nofollow noopener noreferrer"&gt;Watch on YouTube&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

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

&lt;/div&gt;
&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;Details&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;⚡ &lt;strong&gt;Auto GPU / CPU Detection&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;Automatically uses the best&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&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/codebysumit/echonote-ai" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


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

&lt;p&gt;Every important part is open source:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;faster-whisper&lt;/strong&gt; turns speech into text. It supports 99 languages and handles mixed language lectures, which is common in our classrooms.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Gemma 3 1B (GGUF, Q4)&lt;/strong&gt; writes summaries, exam questions, and answers chat questions. It runs through &lt;strong&gt;llama-cpp-python&lt;/strong&gt; and needs only about 800 MB of RAM.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;FastAPI&lt;/strong&gt; powers the backend.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;SQLite with Fernet encryption&lt;/strong&gt; keeps transcripts, summaries, and chats private.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;HTML, CSS, and JavaScript&lt;/strong&gt; make a simple three column studio screen.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The app checks the hardware when it starts. It uses an NVIDIA GPU or Apple Metal if they exist, and falls back to CPU on any laptop with 4 GB RAM. I picked the small 1B model on purpose, because a student laptop must be able to run it.&lt;/p&gt;

&lt;p&gt;It also detects the type of audio. A college lecture gets exam questions. A meeting gets action items. A recipe gets ingredients and steps.&lt;/p&gt;

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

&lt;p&gt;Here is the thing. A closed API would have failed Anshumita in three ways.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Cost.&lt;/strong&gt; A student cannot pay for every hour of lecture audio.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Privacy.&lt;/strong&gt; Her professor's lectures and her own voice notes should stay on her device, not on someone else's server.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Access.&lt;/strong&gt; The app works offline, so bad internet does not stop her from studying.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Open weight models made all three possible. I chose a model small enough for her laptop, ran it myself, and changed how it writes notes for each type of audio. With a closed API I could not have done that for free.&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Best Use of Gemma.&lt;/strong&gt; EchoNote AI runs Gemma 3 1B locally on CPU. It writes all summaries and exam questions, and it powers the chatbot that answers from the lecture transcript.&lt;/p&gt;

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