<?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: Swapnil</title>
    <description>The latest articles on DEV Community by Swapnil (@swaptr).</description>
    <link>https://dev.to/swaptr</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%2F1009278%2Ff23ae8d5-0e80-4165-acdb-dcac02183fa7.jpeg</url>
      <title>DEV Community: Swapnil</title>
      <link>https://dev.to/swaptr</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/swaptr"/>
    <language>en</language>
    <item>
      <title>Your AI, Your Device, Your Data - Introducing Aide</title>
      <dc:creator>Swapnil</dc:creator>
      <pubDate>Mon, 25 May 2026 05:57:48 +0000</pubDate>
      <link>https://dev.to/swaptr/your-ai-your-device-your-data-introducing-aide-59cc</link>
      <guid>https://dev.to/swaptr/your-ai-your-device-your-data-introducing-aide-59cc</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;p&gt;The way we use AI on our phones is changing. People want more from their devices, but the main way we reach all these breakthroughs in AI is still a chatbot window. And we don't just want assistance, we want assistance that actually knows us. The AI should understand who you are, get the help you really need, and step in right where you need it. The catch is that for a long time you had to choose: you could have real personalization, or you could have real privacy, but not both. Anything that knows you that well usually ends up living in someone else's cloud.&lt;/p&gt;

&lt;p&gt;Gemma 4 changes that. It's small enough to run on the phone in your pocket, but still capable enough to reason, see, and hold a real conversation, which means an assistant can finally know you without sending your life off to a server. That's the whole idea behind Aide: a personal, on-device assistant powered by Gemma 4, where the intelligence stays with you and you stay in control.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&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%2Fx18fbfuvs2b8hwoqdaua.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%2Fx18fbfuvs2b8hwoqdaua.png" alt="Aide application interface" width="800" height="612"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Aide is a private-first Android app that puts a frontier-class AI model on the two surfaces you already touch every day: the system keyboard and the assistant button. Instead of asking you to open yet another chatbot, it brings Gemma 4 to where you already type, talk, and tap. Everything runs on-device by default through LiteRT-LM, and the cloud is strictly opt-in. The same loaded model backs all three surfaces, so chat, keyboard, and assistant stay in sync.&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%2Fwacyamkel5g8cnupegab.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%2Fwacyamkel5g8cnupegab.png" alt="A real Android  raw `InputMethodService` endraw  with a transform bar above the keys (rephrase, simplify, fix grammar, summarize, tone shifts, key points, bullets, table view, three-reply suggestions) and a magic button for one-shot Custom Instructions." width="800" height="352"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The keyboard is a real Android input method with a transform bar sitting above the keys. You can rephrase, simplify, fix grammar, summarize, change tone, pull out key points, or turn a mess of text into bullets or a table, and a magic button runs your own one-shot custom instruction. Every transform is just a row in a local task table, so you can edit the prompt, reorder them, or add your own with a &lt;code&gt;{{text}}&lt;/code&gt; template. The best translation model on device is the Gemma 4 which can translate across 37 languages paired with 20+ on-device speech models, so it can listen in one language and write back in another without the data ever leaving the device.&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%2Fjrrtz1tl4isjmovbd498.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%2Fjrrtz1tl4isjmovbd498.png" alt="Roughly 23 Piper, Kokoro, MeloTTS, and Matcha voices across 10+ languages for output; Zipformer, Whisper, Moonshine, Parakeet, SenseVoice, and GigaAM for input. Auto / Sherpa / System is a per-surface choice." width="800" height="861"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The assistant button opens a turn-based voice loop (speech to text, then VAD, then &lt;strong&gt;Gemma 4&lt;/strong&gt;, then text to speech) that stays local by default. The built-in voice recognition and TTS on phones are fast but flat and robotic, so Aide ships a real choice of voices instead: roughly 23 Piper, Kokoro, MeloTTS, and Matcha voices for output and a stack of Zipformer, Whisper, Moonshine, Parakeet, SenseVoice, and GigaAM models for input. The whole voice toolkit runs on &lt;a href="https://github.com/k2-fsa/sherpa-onnx" rel="noopener noreferrer"&gt;Sherpa-ONNX&lt;/a&gt;, which gives Aide one fast, on-device runtime for STT, TTS, and VAD across all of those models, so none of your audio has to leave the phone to be heard or spoken back.&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%2Fzzpg75ootzwsgttaytw5.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%2Fzzpg75ootzwsgttaytw5.png" alt="Long-press the assistant button for a turn-based voice loop: STT → VAD → Gemma 4 → TTS, on-device by default." width="800" height="581"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Under all of that, Gemma 4's native function calling drives a single tool dispatcher for alarms, calendar, contacts, phone, clipboard, files, web search, calculator, and time, with per-category permission toggles and a confirmation gate in front of anything destructive. Chat is fully multimodal, reading images as a Gemma 4 turn and exposing the model's reasoning through a tappable thinking chip. Pick a local weight (E2B or E4B) for daily use, or point at an Ollama endpoint when you want the heavier 26B or 31B models, swappable per chat and mid-session. The whole point is trust: an assistant that actually knows you, without shipping your life, your memories, and your conversations off to someone else's server.&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%2Fs72mvez5qx95l0rx8ff8.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%2Fs72mvez5qx95l0rx8ff8.png" alt="Gemma 4's native function calling drives a single dispatcher for alarms, calendar, contacts, phone, clipboard, filesystem, web search, calculator, and time. Per-category toggles in settings; destructive actions route through a confirmation gate." width="800" height="861"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And here is where the real power is: all of this works offline. One-time setup downloads the Gemma 4 weight and the voice models you want, and after that everything keeps running with the network off. No account, no sign-in, nothing to phone home to. Few apps this feature-rich stay fully on-device, and that was the bar Aide set for itself. Turn on airplane mode and the assistant is still right there.&lt;/p&gt;

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

&lt;p&gt;Video walkthrough (Please excuse the poor video quality, I am not much of a video editor)&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/CbLaKEOCMwE"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

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

&lt;p&gt;Code Repository: &lt;a href="https://github.com/swaptr/aide" rel="noopener noreferrer"&gt;https://github.com/swaptr/aide&lt;/a&gt;&lt;br&gt;
&lt;em&gt;The APK file is available under the &lt;a href="https://github.com/swaptr/aide/releases" rel="noopener noreferrer"&gt;Releases&lt;/a&gt; section.&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Gemma 4&lt;/strong&gt; is the right fit because of what an on-device personal assistant actually demands: it has to see, reason, and call tools, all while running on a phone instead of a datacenter. Gemma 4 is natively multimodal, reasons well, and carries a 128K context window, and it does all of that at a size that still fits in your pocket. That combination is rare.&lt;/p&gt;

&lt;p&gt;For day-to-day use, Aide runs the &lt;strong&gt;E2B&lt;/strong&gt; and &lt;strong&gt;E4B&lt;/strong&gt; weights fully on-device through &lt;a href="https://github.com/google-ai-edge/LiteRT-LM" rel="noopener noreferrer"&gt;LiteRT-LM&lt;/a&gt;. These small variants are built for mobile and edge, and they are quick enough to back the keyboard transforms, the voice loop, and chat without a network round-trip. The same multimodal model reads an image in chat, drives native function calling for the tool dispatcher, and exposes its reasoning trace through the thinking chip. For most daily interactions, E2B and E4B carry the whole experience locally.&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%2F8zet3psqwe5enubi8g04.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%2F8zet3psqwe5enubi8g04.png" alt="Pick a local Gemma 4 weight (E2B / E4B) or point at an Ollama endpoint for heavier weights. Selection is per-chat, swappable mid-session." width="800" height="581"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When you want more reasoning power, Aide hands off to an optional &lt;a href="https://ollama.com/" rel="noopener noreferrer"&gt;Ollama&lt;/a&gt; endpoint, swappable per chat and even mid-session. You can point it at a self-hosted Ollama server for the heavier &lt;strong&gt;Gemma 4 26B&lt;/strong&gt; and &lt;strong&gt;31B Dense&lt;/strong&gt; weights and keep everything inside your own infrastructure, or use Ollama Cloud when you want frontier-grade output. Either way the choice is yours and the default stays local. That is the whole point of Aide: AI used the way it should be, one that knows you without shipping your life, your memories, and your conversations to someone else's server.&lt;/p&gt;

&lt;p&gt;Next, I want to bring some of the &lt;a href="https://gemini.google/overview/gemini-live/" rel="noopener noreferrer"&gt;Gemini Live&lt;/a&gt; experience to Aide: sharing the screen with Gemma 4, drafting artifacts from what it sees, and then referencing those artifacts back in chat and pulling them into your writing straight from the keyboard.&lt;/p&gt;

&lt;h2&gt;
  
  
  Acknowledgements
&lt;/h2&gt;

&lt;p&gt;Special thanks to the following projects and services that made this application possible:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://deepmind.google/models/gemma/" rel="noopener noreferrer"&gt;&lt;strong&gt;Google AI&lt;/strong&gt;&lt;/a&gt;, for running this challenge and for the work on Gemma, especially for prioritizing multimodal and translation capabilities in the Gemma family of models, which is exactly what made an offline assistant like this realistic.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://dev.to/"&gt;&lt;strong&gt;DEV (dev.to)&lt;/strong&gt;&lt;/a&gt;, for hosting the hackathon and the community around it.&lt;/li&gt;
&lt;li&gt;The &lt;a href="https://ollama.com/" rel="noopener noreferrer"&gt;&lt;strong&gt;Ollama&lt;/strong&gt;&lt;/a&gt; team, for making models, including the Gemma weights, easy to self-host and serve.&lt;/li&gt;
&lt;li&gt;The &lt;a href="https://github.com/k2-fsa/sherpa-onnx" rel="noopener noreferrer"&gt;&lt;strong&gt;Sherpa-ONNX&lt;/strong&gt;&lt;/a&gt; project team, whose on-device runtime powers all of Aide's speech-to-text, text-to-speech, and voice activity detection.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.android.com/" rel="noopener noreferrer"&gt;&lt;strong&gt;Google&lt;/strong&gt;&lt;/a&gt; for Android and the broader edge tooling, including &lt;a href="https://github.com/google-ai-edge/LiteRT-LM" rel="noopener noreferrer"&gt;LiteRT-LM&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

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