<?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: Sarath Chandra Pandurangi</title>
    <description>The latest articles on DEV Community by Sarath Chandra Pandurangi (@sarathc).</description>
    <link>https://dev.to/sarathc</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.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F396678%2Fc26d423c-c244-45cd-a9b7-847a5f0a9182.jpeg</url>
      <title>DEV Community: Sarath Chandra Pandurangi</title>
      <link>https://dev.to/sarathc</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sarathc"/>
    <language>en</language>
    <item>
      <title>GemmaNotes</title>
      <dc:creator>Sarath Chandra Pandurangi</dc:creator>
      <pubDate>Mon, 25 May 2026 00:36:10 +0000</pubDate>
      <link>https://dev.to/sarathc/gemmanotes-2nm7</link>
      <guid>https://dev.to/sarathc/gemmanotes-2nm7</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/google-gemma-2026-05-06"&gt;Gemma 4 Challenge: Build with Gemma 4&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;GemmaNotes is a private, completely offline, AI voice-recorder plugin for Obsidian that turns your spoken thoughts into tidy text notes with a single click.&lt;/p&gt;

&lt;p&gt;Unlike most dictation tools, GemmaNotes performs all of its processing completely on your own computer. It does not send your voice to the cloud  or even require an internet connection, keeping your recordings and private and secure.&lt;/p&gt;

&lt;p&gt;Simply hold down microphone key to record, speak your mind. Once you are done, watch your words appear directly at your cursor, free of filler words.&lt;/p&gt;

&lt;p&gt;Even so, if your spoken draft is like mine, a rambling blob of text, you can also use the built-in magic rewrite feature to fix grammar, and polish your speech into clear, structured prose.&lt;/p&gt;

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

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=_8CRAbo_a0Y" rel="noopener noreferrer"&gt;https://www.youtube.com/watch?v=_8CRAbo_a0Y&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;a href="https://github.com/sarath/gemmanotes" rel="noopener noreferrer"&gt;https://github.com/sarath/gemmanotes&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How I Used Gemma 4
&lt;/h2&gt;

&lt;p&gt;GemmaNotes leverages Google’s Gemma 4 E2B (Effective 2B) and option to choose E4B model to enable fully offline, push-to-talk voice dictation directly inside Obsidian notes. Rather than relying on a complex, multi-stage pipeline that pipes separate  transcription audio into a separate large language model, Gemma 4’s native multimodal capabilities handle the entire processing flow in a single, unified stage—converting raw audio inputs directly into structured text in-process via transformers.js and WebGPU. We chose the E2B variant over E4B or the massive workstation-class 31B Dense model because of its optimized performance-to-size ratio.&lt;/p&gt;

&lt;p&gt;With a download footprint of approximately 3.2 GB, E2B strikes the perfect balance for local desktop applications; it is lightweight enough to avoid depleting host system RAM or overloading WebGPU runtimes while remaining highly capable of capturing speech accurately and generating natural punctuation. &lt;/p&gt;

&lt;p&gt;Furthermore, this compact footprint allows the same E2B instance to  power our on-demand rewriting features, tidying up raw conversational transcripts into polished prose without loading a secondary LLM. Selecting Gemma 4 E2B ensures that GemmaNotes delivers a highly private, zero-latency note-taking assistant that runs completely local on the user's desktop hardware without any external API keys or network reliance.&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.amazonaws.com%2Fuploads%2Farticles%2Fcglgmjrddly41xzoi0eu.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.amazonaws.com%2Fuploads%2Farticles%2Fcglgmjrddly41xzoi0eu.png" alt=" " width="799" height="696"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>gemmachallenge</category>
      <category>gemma</category>
    </item>
  </channel>
</rss>
