<?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>Forem: Syed</title>
    <description>The latest articles on Forem by Syed (@abuvanth).</description>
    <link>https://forem.com/abuvanth</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%2F1809102%2F78c21015-b77f-47b3-9b48-6f2388947614.jpeg</url>
      <title>Forem: Syed</title>
      <link>https://forem.com/abuvanth</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/abuvanth"/>
    <language>en</language>
    <item>
      <title>Building an Offline AI App That Lets You Chat With PDFs on Android</title>
      <dc:creator>Syed</dc:creator>
      <pubDate>Sat, 07 Mar 2026 05:09:12 +0000</pubDate>
      <link>https://forem.com/abuvanth/building-an-offline-ai-app-that-lets-you-chat-with-pdfs-on-android-5egj</link>
      <guid>https://forem.com/abuvanth/building-an-offline-ai-app-that-lets-you-chat-with-pdfs-on-android-5egj</guid>
      <description>&lt;p&gt;Most AI tools that analyze documents require uploading your PDFs to the cloud.&lt;/p&gt;

&lt;p&gt;That means your files are processed on remote servers, which can be a privacy concern—especially when dealing with personal or sensitive documents.&lt;/p&gt;

&lt;p&gt;I wanted a different approach.&lt;/p&gt;

&lt;p&gt;So I built EdgeDox, an Android app that lets you chat with PDFs using AI that runs completely on-device.&lt;/p&gt;

&lt;p&gt;Why Offline AI?&lt;/p&gt;

&lt;p&gt;Many users are uncomfortable uploading documents to external servers. By running the AI locally on the device, we get several advantages:&lt;/p&gt;

&lt;p&gt;• Privacy-first – documents never leave the phone&lt;br&gt;
• Offline functionality – works without internet&lt;br&gt;
• Faster interaction – no network latency&lt;br&gt;
• Better control over data&lt;/p&gt;

&lt;p&gt;What EdgeDox Does&lt;/p&gt;

&lt;p&gt;The app allows users to interact with their documents using natural language.&lt;/p&gt;

&lt;p&gt;You can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Ask questions about a PDF&lt;/li&gt;
&lt;li&gt;Generate summaries&lt;/li&gt;
&lt;li&gt;Extract key information&lt;/li&gt;
&lt;li&gt;Quickly navigate large documents&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Everything happens locally on the phone.&lt;/p&gt;

&lt;p&gt;The Idea&lt;/p&gt;

&lt;p&gt;I’ve always been interested in on-device AI and privacy-first applications. With recent improvements in lightweight AI models, it’s becoming possible to run useful AI workloads directly on mobile devices.&lt;/p&gt;

&lt;p&gt;EdgeDox is an experiment in pushing this idea further—making document AI tools work without relying on cloud infrastructure.&lt;/p&gt;

&lt;p&gt;Current Status&lt;/p&gt;

&lt;p&gt;The app is still early, but it recently got its first few subscribers, which is a big milestone for an indie developer.&lt;/p&gt;

&lt;p&gt;Now I'm focusing on improving:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;response quality&lt;/li&gt;
&lt;li&gt;document processing speed&lt;/li&gt;
&lt;li&gt;user experience&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Try It&lt;/p&gt;

&lt;p&gt;If you're interested in offline AI or privacy-focused apps, you can check it out here:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://play.google.com/store/apps/details?id=io.cyberfly.edgedox" rel="noopener noreferrer"&gt;https://play.google.com/store/apps/details?id=io.cyberfly.edgedox&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I’d love feedback from the developer community on how to improve it further.&lt;/p&gt;

</description>
      <category>android</category>
      <category>ai</category>
      <category>webdev</category>
      <category>programming</category>
    </item>
    <item>
      <title>This app is full vibe coded</title>
      <dc:creator>Syed</dc:creator>
      <pubDate>Thu, 05 Mar 2026 02:08:30 +0000</pubDate>
      <link>https://forem.com/abuvanth/this-app-is-full-vibe-coded-4ae5</link>
      <guid>https://forem.com/abuvanth/this-app-is-full-vibe-coded-4ae5</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/abuvanth" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&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%2Fuser%2Fprofile_image%2F1809102%2F78c21015-b77f-47b3-9b48-6f2388947614.jpeg" alt="abuvanth"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="https://dev.to/abuvanth/building-an-offline-ai-app-that-lets-you-chat-with-pdfs-on-android-33e5" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Building an Offline AI App That Lets You Chat With PDFs on Android&lt;/h2&gt;
      &lt;h3&gt;Syed ・ Mar 5&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#ai&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#android&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#privacy&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#showdev&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
    </item>
    <item>
      <title>Building an Offline AI App That Lets You Chat With PDFs on Android</title>
      <dc:creator>Syed</dc:creator>
      <pubDate>Thu, 05 Mar 2026 02:07:25 +0000</pubDate>
      <link>https://forem.com/abuvanth/building-an-offline-ai-app-that-lets-you-chat-with-pdfs-on-android-33e5</link>
      <guid>https://forem.com/abuvanth/building-an-offline-ai-app-that-lets-you-chat-with-pdfs-on-android-33e5</guid>
      <description>&lt;p&gt;Most AI tools that analyze documents require uploading your PDFs to the cloud.&lt;/p&gt;

&lt;p&gt;That means your files are processed on remote servers, which can be a privacy concern—especially when dealing with personal or sensitive documents.&lt;/p&gt;

&lt;p&gt;I wanted a different approach.&lt;/p&gt;

&lt;p&gt;So I built &lt;strong&gt;EdgeDox&lt;/strong&gt;, an Android app that lets you &lt;strong&gt;chat with PDFs using AI that runs completely on-device&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Offline AI?
&lt;/h2&gt;

&lt;p&gt;Many users are uncomfortable uploading documents to external servers. By running the AI locally on the device, we get several advantages:&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Privacy-first&lt;/strong&gt; – documents never leave the phone&lt;br&gt;
• &lt;strong&gt;Offline functionality&lt;/strong&gt; – works without internet&lt;br&gt;
• &lt;strong&gt;Faster interaction&lt;/strong&gt; – no network latency&lt;br&gt;
• &lt;strong&gt;Better control over data&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What EdgeDox Does
&lt;/h2&gt;

&lt;p&gt;The app allows users to interact with their documents using natural language.&lt;/p&gt;

&lt;p&gt;You can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Ask questions about a PDF&lt;/li&gt;
&lt;li&gt;Generate summaries&lt;/li&gt;
&lt;li&gt;Extract key information&lt;/li&gt;
&lt;li&gt;Quickly navigate large documents&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Everything happens locally on the phone.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Idea
&lt;/h2&gt;

&lt;p&gt;I’ve always been interested in &lt;strong&gt;on-device AI and privacy-first applications&lt;/strong&gt;. With recent improvements in lightweight AI models, it’s becoming possible to run useful AI workloads directly on mobile devices.&lt;/p&gt;

&lt;p&gt;EdgeDox is an experiment in pushing this idea further—making document AI tools work &lt;strong&gt;without relying on cloud infrastructure&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Current Status
&lt;/h2&gt;

&lt;p&gt;The app is still early, but it recently got its &lt;strong&gt;first few subscribers&lt;/strong&gt;, which is a big milestone for an indie developer.&lt;/p&gt;

&lt;p&gt;Now I'm focusing on improving:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;response quality&lt;/li&gt;
&lt;li&gt;document processing speed&lt;/li&gt;
&lt;li&gt;user experience&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Try It
&lt;/h2&gt;

&lt;p&gt;If you're interested in &lt;strong&gt;offline AI or privacy-focused apps&lt;/strong&gt;, you can check it out here:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://play.google.com/store/apps/details?id=io.cyberfly.edgedox" rel="noopener noreferrer"&gt;https://play.google.com/store/apps/details?id=io.cyberfly.edgedox&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I’d love feedback from the developer community on how to improve it further.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>android</category>
      <category>privacy</category>
      <category>showdev</category>
    </item>
    <item>
      <title>How I ran LLM + RAG fully offline on Android using MNN</title>
      <dc:creator>Syed</dc:creator>
      <pubDate>Sat, 14 Feb 2026 18:02:27 +0000</pubDate>
      <link>https://forem.com/abuvanth/how-i-ran-llm-rag-fully-offline-on-android-using-mnn-3p8j</link>
      <guid>https://forem.com/abuvanth/how-i-ran-llm-rag-fully-offline-on-android-using-mnn-3p8j</guid>
      <description>&lt;h1&gt;
  
  
  Running LLM + RAG Fully Offline on Android Using MNN (No Cloud, No API)
&lt;/h1&gt;

&lt;p&gt;Most AI apps today depend completely on the cloud.&lt;/p&gt;

&lt;p&gt;Upload your document → send to API → wait for response → pay per request.&lt;br&gt;
And if internet is slow or unavailable? The AI stops working.&lt;/p&gt;

&lt;p&gt;I wanted to explore something different:&lt;br&gt;
&lt;strong&gt;Can we run a complete LLM + RAG pipeline fully offline on a mobile device?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;After months of experimentation, optimization, and many failed attempts, I finally got a working offline document AI running entirely on-device. Here’s what I learned.&lt;/p&gt;




&lt;h1&gt;
  
  
  🎯 Goal
&lt;/h1&gt;

&lt;p&gt;Build a document assistant that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Runs fully offline&lt;/li&gt;
&lt;li&gt;Uses no external API&lt;/li&gt;
&lt;li&gt;Keeps documents local&lt;/li&gt;
&lt;li&gt;Works on mid-range Android devices&lt;/li&gt;
&lt;li&gt;Provides usable response speed&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Not just a demo — something actually practical.&lt;/p&gt;




&lt;h1&gt;
  
  
  🧠 Architecture Overview
&lt;/h1&gt;

&lt;p&gt;The system is a fully local RAG pipeline running on-device:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pipeline:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;User loads PDF/document&lt;/li&gt;
&lt;li&gt;Text extracted locally&lt;/li&gt;
&lt;li&gt;Converted into embeddings&lt;/li&gt;
&lt;li&gt;Stored in local vector index&lt;/li&gt;
&lt;li&gt;User asks question&lt;/li&gt;
&lt;li&gt;Relevant chunks retrieved&lt;/li&gt;
&lt;li&gt;Local LLM generates answer&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Everything happens inside the device. No cloud calls.&lt;/p&gt;




&lt;h1&gt;
  
  
  ⚙️ Tech Stack
&lt;/h1&gt;

&lt;h3&gt;
  
  
  LLM (Quantized)
&lt;/h3&gt;

&lt;p&gt;Smaller quantized models optimized for CPU inference.&lt;br&gt;
Main challenge: balancing size vs response quality.&lt;/p&gt;

&lt;h3&gt;
  
  
  Embeddings (On-device)
&lt;/h3&gt;

&lt;p&gt;Multilingual embeddings generated locally and stored for retrieval.&lt;/p&gt;

&lt;h3&gt;
  
  
  Vector Storage
&lt;/h3&gt;

&lt;p&gt;Lightweight local vector index for fast retrieval without heavy RAM usage.&lt;/p&gt;

&lt;h3&gt;
  
  
  MNN (Mobile Neural Network)
&lt;/h3&gt;

&lt;p&gt;The biggest unlock.&lt;/p&gt;

&lt;p&gt;MNN provides:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Efficient CPU inference&lt;/li&gt;
&lt;li&gt;Mobile-optimized runtime&lt;/li&gt;
&lt;li&gt;Low memory overhead&lt;/li&gt;
&lt;li&gt;Faster load vs some other runtimes I tested&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For on-device AI, runtime efficiency matters more than raw model size.&lt;/p&gt;




&lt;h1&gt;
  
  
  🚧 Major Challenges
&lt;/h1&gt;

&lt;h2&gt;
  
  
  1. Memory limits on mid-range phones
&lt;/h2&gt;

&lt;p&gt;High-end phones are easy.&lt;br&gt;
Real challenge: 4–6GB RAM devices.&lt;/p&gt;

&lt;p&gt;Solutions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Aggressive quantization&lt;/li&gt;
&lt;li&gt;Model size tuning&lt;/li&gt;
&lt;li&gt;Streaming token generation&lt;/li&gt;
&lt;li&gt;Careful memory release&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  2. Model loading time
&lt;/h2&gt;

&lt;p&gt;Large models = slow startup.&lt;/p&gt;

&lt;p&gt;Fix:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Preload strategy&lt;/li&gt;
&lt;li&gt;Lazy loading&lt;/li&gt;
&lt;li&gt;Smaller embedding models&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  3. Embedding speed
&lt;/h2&gt;

&lt;p&gt;Generating embeddings locally was initially slow.&lt;/p&gt;

&lt;p&gt;Optimizations:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Batch processing&lt;/li&gt;
&lt;li&gt;Lightweight embedding models&lt;/li&gt;
&lt;li&gt;Efficient tensor handling in MNN&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  4. Response usability
&lt;/h2&gt;

&lt;p&gt;Offline LLM must still feel usable.&lt;/p&gt;

&lt;p&gt;Tradeoffs:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Slightly slower than cloud&lt;/li&gt;
&lt;li&gt;But instant availability&lt;/li&gt;
&lt;li&gt;Zero latency from network&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  📊 Current Performance (mid-range Android)
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;Fully offline end-to-end&lt;/li&gt;
&lt;li&gt;No internet required&lt;/li&gt;
&lt;li&gt;Works on mid-range devices&lt;/li&gt;
&lt;li&gt;Private document processing&lt;/li&gt;
&lt;li&gt;No API cost&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Still optimizing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;response speed&lt;/li&gt;
&lt;li&gt;model quality&lt;/li&gt;
&lt;li&gt;memory usage&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  🔐 Why Offline AI Matters
&lt;/h1&gt;

&lt;p&gt;Cloud AI is powerful, but comes with trade-offs:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Privacy concerns&lt;/li&gt;
&lt;li&gt;Recurring API cost&lt;/li&gt;
&lt;li&gt;Internet dependency&lt;/li&gt;
&lt;li&gt;Latency&lt;/li&gt;
&lt;li&gt;Not usable in low-connectivity regions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Offline AI flips this model.&lt;/p&gt;

&lt;p&gt;Use cases:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Students with limited internet&lt;/li&gt;
&lt;li&gt;Journalists handling sensitive docs&lt;/li&gt;
&lt;li&gt;Developers&lt;/li&gt;
&lt;li&gt;Researchers&lt;/li&gt;
&lt;li&gt;Privacy-first users&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  🧪 Lessons Learned
&lt;/h1&gt;

&lt;p&gt;Biggest insight:&lt;br&gt;
&lt;strong&gt;Offline AI on mobile is no longer impractical.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;With the right optimization:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Quantized models&lt;/li&gt;
&lt;li&gt;Efficient runtime (like MNN)&lt;/li&gt;
&lt;li&gt;Lightweight RAG pipeline&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;…it becomes usable today.&lt;/p&gt;

&lt;p&gt;Not perfect yet, but very real.&lt;/p&gt;




&lt;h1&gt;
  
  
  🔮 What’s Next
&lt;/h1&gt;

&lt;p&gt;Currently exploring:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Faster token generation&lt;/li&gt;
&lt;li&gt;Better small models&lt;/li&gt;
&lt;li&gt;Multi-document knowledge base&lt;/li&gt;
&lt;li&gt;Offline voice input&lt;/li&gt;
&lt;li&gt;Cross-platform support&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Long term: building a fully offline AI ecosystem.&lt;/p&gt;




&lt;h1&gt;
  
  
  🤝 Looking for Feedback
&lt;/h1&gt;

&lt;p&gt;Curious if others here are experimenting with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;On-device LLMs&lt;/li&gt;
&lt;li&gt;Offline RAG&lt;/li&gt;
&lt;li&gt;Mobile AI inference&lt;/li&gt;
&lt;li&gt;MNN / llama.cpp / other runtimes&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;What models or runtimes are you using?&lt;br&gt;
Is there real demand for offline/private AI vs cloud?&lt;/p&gt;

&lt;p&gt;Would love to hear thoughts from the community.&lt;/p&gt;




&lt;h1&gt;
  
  
  📱 Demo App (for testing)
&lt;/h1&gt;

&lt;p&gt;If anyone wants to try the current implementation:&lt;br&gt;
&lt;a href="https://play.google.com/store/apps/details?id=io.cyberfly.edgedox" rel="noopener noreferrer"&gt;https://play.google.com/store/apps/details?id=io.cyberfly.edgedox&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Mainly looking for technical feedback and ideas from other builders working on local AI.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>android</category>
      <category>llm</category>
      <category>rag</category>
    </item>
    <item>
      <title>rust docker multiplatform optimization

https://medium.com/@syedabuthahir/how-i-cut-my-rust-multi-platform-docker-build-time-from-2-hours-to-18-minutes-a0dbc1016f9d</title>
      <dc:creator>Syed</dc:creator>
      <pubDate>Fri, 07 Nov 2025 05:52:29 +0000</pubDate>
      <link>https://forem.com/abuvanth/rust-docker-multiplatform-optimization-2hcl</link>
      <guid>https://forem.com/abuvanth/rust-docker-multiplatform-optimization-2hcl</guid>
      <description>&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://medium.com/@syedabuthahir/how-i-cut-my-rust-multi-platform-docker-build-time-from-2-hours-to-18-minutes-a0dbc1016f9d" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fv2%2Fresize%3Afit%3A1024%2F1%2Ara8rW7VcVZhDC3Ae1cO_BQ.png" height="800" class="m-0" width="800"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://medium.com/@syedabuthahir/how-i-cut-my-rust-multi-platform-docker-build-time-from-2-hours-to-18-minutes-a0dbc1016f9d" rel="noopener noreferrer" class="c-link"&gt;
            Rust + Docker + GitHub Actions: My Multi-Arch Build Went from 2 Hours to 18 Minutes | by Syed Abuthahir | Nov, 2025 | Medium
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            A simple CI/CD optimization that saved me hours every time I pushed code
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fv2%2F5d8de952517e8160e40ef9841c781cdc14a5db313057fa3c3de41c6f5b494b19" width="32" height="32"&gt;
          medium.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
    </item>
  </channel>
</rss>
