<?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: RB</title>
    <description>The latest articles on Forem by RB (@rahul33859111).</description>
    <link>https://forem.com/rahul33859111</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%2F1407467%2F19cd066a-3cf8-42ce-aa0e-3a921086b3a9.png</url>
      <title>Forem: RB</title>
      <link>https://forem.com/rahul33859111</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/rahul33859111"/>
    <language>en</language>
    <item>
      <title>Why I Built My Free PDF Editor with WebAssembly (Zero Server Uploads)</title>
      <dc:creator>RB</dc:creator>
      <pubDate>Fri, 22 May 2026 13:13:08 +0000</pubDate>
      <link>https://forem.com/rahul33859111/why-i-built-my-free-pdf-editor-with-webassembly-zero-server-uploads-1ibe</link>
      <guid>https://forem.com/rahul33859111/why-i-built-my-free-pdf-editor-with-webassembly-zero-server-uploads-1ibe</guid>
      <description>&lt;p&gt;If you’ve ever tried to compress a bank statement or merge sensitive PDF documents online, you’ve probably noticed the process: you upload the file, wait for a progress bar, and then download the result. &lt;/p&gt;

&lt;p&gt;But what happens to that file on the server?&lt;br&gt;
Most free PDF tools (like ILovePDF or Smallpdf) upload your highly sensitive documents to remote servers to process them. This is a massive privacy risk for documents containing PAN cards, Aadhaar numbers, and financial statements. &lt;/p&gt;

&lt;p&gt;To solve this, I built &lt;strong&gt;&lt;a href="https://www.pdfpro.co.in" rel="noopener noreferrer"&gt;PDF Pro&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Why WebAssembly (WASM)?
&lt;/h3&gt;

&lt;p&gt;Instead of sending your files to a server, I used WebAssembly to compile a heavy C++ PDF processing library directly into Javascript. &lt;/p&gt;

&lt;p&gt;This means the entire PDF engine runs &lt;strong&gt;locally inside your browser&lt;/strong&gt;. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Zero Uploads:&lt;/strong&gt; Your file literally never leaves your computer.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Instant Speed:&lt;/strong&gt; Because there is no network latency, compressing a 10MB file happens in milliseconds instead of minutes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;100% Free:&lt;/strong&gt; No servers means no cloud computing costs. I can afford to offer this tool completely free with zero daily limits.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Built for the Indian Web
&lt;/h3&gt;

&lt;p&gt;I specifically optimized PDF Pro to target government portal limits. The Staff Selection Commission (SSC) and UPSC require documents to be strictly under 200KB. &lt;/p&gt;

&lt;p&gt;Instead of arbitrarily dropping quality and making your scanned certificates blurry, the WebAssembly engine strips embedded fonts and intelligently down-samples resolution to exactly 150 DPI—maintaining crystal clear vector text while satisfying the portal sizes.&lt;/p&gt;

&lt;p&gt;If you are a developer, CA, or student tired of uploading your personal data to random websites, try it out: &lt;strong&gt;&lt;a href="https://www.pdfpro.co.in" rel="noopener noreferrer"&gt;PDF Pro - Free &amp;amp; Private PDF Tools&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>webassembly</category>
      <category>privacy</category>
    </item>
    <item>
      <title>ShowDev: I built a 100% local, zero-upload PDF editor using WebAssembly</title>
      <dc:creator>RB</dc:creator>
      <pubDate>Thu, 21 May 2026 13:36:08 +0000</pubDate>
      <link>https://forem.com/rahul33859111/showdev-i-built-a-100-local-zero-upload-pdf-editor-using-webassembly-19o5</link>
      <guid>https://forem.com/rahul33859111/showdev-i-built-a-100-local-zero-upload-pdf-editor-using-webassembly-19o5</guid>
      <description>&lt;p&gt;Why I Built a Privacy-First PDF Tool for India's Government Portals (And the Tech Behind It)&lt;br&gt;
Updated&lt;br&gt;
May 20, 2026&lt;br&gt;
•&lt;br&gt;
5 min read&lt;br&gt;
RahulBanerjee&lt;br&gt;
RahulBanerjee&lt;br&gt;
Part of series&lt;br&gt;
Building in Public — PDF Pro&lt;br&gt;
Every Indian who has applied for a government job, filed an ITR, or renewed their passport knows the frustration I'm about to describe.&lt;/p&gt;

&lt;p&gt;You have spent hours gathering your documents — Aadhaar card, PAN card, marksheets, photographs. You open the portal. You upload your carefully scanned PDF. And then you see it:&lt;/p&gt;

&lt;p&gt;❌ "File size exceeds the maximum limit of 200KB. Please upload a smaller file."&lt;/p&gt;

&lt;p&gt;Your file is 2.1MB. You try again. 1.8MB. Still rejected. You are now frantically Googling "how to compress PDF online free" at 11:45 PM, the night before the application deadline.&lt;/p&gt;

&lt;p&gt;Every tool you find has the same catch: upload your document to our servers first.&lt;/p&gt;

&lt;p&gt;That is exactly the problem I set out to solve.&lt;/p&gt;

&lt;p&gt;The Privacy Problem Nobody Talks About Think about what you are uploading when you use a typical online PDF compressor:&lt;/p&gt;

&lt;p&gt;Your Aadhaar card (your national identity number) Your PAN card (your tax identity) Your bank statements (your complete financial history) Your ITR filings (income, assets, liabilities) These files are being sent to servers in the US, Europe, or wherever the company is hosted. You have no idea what happens to them after processing. Are they stored? For how long? Are they used to train AI models? Are they sold?&lt;/p&gt;

&lt;p&gt;Most privacy policies of these tools are vague at best and alarming at worst.&lt;/p&gt;

&lt;p&gt;When I dug into this problem, I realized the solution already existed in the browser. We just weren't using it.&lt;/p&gt;

&lt;p&gt;The Solution: WebAssembly Changes Everything Modern browsers ship with a technology called WebAssembly (Wasm) — a binary instruction format that lets you run near-native speed code directly inside the browser sandbox.&lt;/p&gt;

&lt;p&gt;Libraries like pdf-lib and Ghostscript compiled to Wasm mean you can run a full PDF compression engine entirely inside the user's browser tab.&lt;/p&gt;

&lt;p&gt;Here is what this means practically:&lt;/p&gt;

&lt;p&gt;Traditional Cloud Tool: User → Upload file to server → Server compresses → Download result ↑ Your private document lives on their infrastructure PDF Pro (Wasm-based): User → File loads in browser memory → Browser compresses locally → Download result ↑ Your document never leaves your computer The file never touches a remote server. Not even for a millisecond.&lt;/p&gt;

&lt;p&gt;Building PDF Pro I built PDF Pro (&lt;a href="https://pdfpro.co.in" rel="noopener noreferrer"&gt;https://pdfpro.co.in&lt;/a&gt;) as a Next.js application with a Wasm core. Here is the architecture in plain terms:&lt;/p&gt;

&lt;p&gt;Frontend: Next.js 16 (App Router) hosted on Vercel PDF Engine: WebAssembly-compiled compression libraries running client-side Analytics: Google Analytics for aggregate visitor counting only — no PII Backend: None. There is no backend that touches your files.&lt;/p&gt;

&lt;p&gt;The stack is intentionally minimal. The less infrastructure you have, the less can go wrong from a privacy standpoint.&lt;/p&gt;

&lt;p&gt;The Compression Challenge Government portals in India have wildly different file size requirements:&lt;/p&gt;

&lt;p&gt;Portal Limit UPSC IAS Application 200KB SSC CGL 200KB IBPS PO 500KB Passport Seva 1MB ITR Filing 1MB Visa Application 1MB Building a single tool that handles all these targets while preserving document readability was the core engineering challenge. Too aggressive on compression and your Aadhaar number becomes unreadable. Too gentle and the portal rejects the file.&lt;/p&gt;

&lt;p&gt;The solution was letting the user control the compression level explicitly, with a real-time preview of the output file size before they download.&lt;/p&gt;

&lt;p&gt;What I Learned Building This&lt;/p&gt;

&lt;p&gt;Indian users are underserved by Western productivity tools Most global PDF tools are built for English-speaking Western users filing corporate documents. The specific pain point of compressing identity documents for strict-size government portals is a uniquely Indian problem that nobody was solving well.&lt;/p&gt;

&lt;p&gt;Privacy is a feature, not a checkbox When I started describing PDF Pro as "your files never leave your browser," the response from users was immediate and emotional. People care about this. They had just never had a tool that made it the central promise.&lt;/p&gt;

&lt;p&gt;WebAssembly is criminally underused in productivity tools The performance of Wasm-compiled PDF libraries surprised even me. Compression that would take a server round-trip (upload → process → download) now completes in under 3 seconds on a mid-range phone, entirely offline, with no latency.&lt;/p&gt;

&lt;p&gt;The Bigger Picture We talk a lot in the developer community about building products for global audiences. But there are 1.4 billion people in India navigating government digital infrastructure that was not designed with them in mind.&lt;/p&gt;

&lt;p&gt;If you know WebAssembly, you have a genuine superpower to fix these problems — tools that work offline, respect privacy by design, and don't require a subscription or an account.&lt;/p&gt;

&lt;p&gt;PDF Pro is proudly built in India. Not as a marketing line, but as a genuine statement of intent about who this tool is for.&lt;/p&gt;

&lt;p&gt;Try It The tool is completely free with no account required:&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://pdfpro.co.in" rel="noopener noreferrer"&gt;https://pdfpro.co.in&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you are a developer curious about the Wasm implementation, feel free to reach out at &lt;a href="mailto:rahulorama@gmail.com"&gt;rahulorama@gmail.com&lt;/a&gt; . I am happy to discuss the technical architecture in more detail.&lt;/p&gt;

&lt;p&gt;And if you are an Indian developer building tools for Indian problems — I would love to connect. This space needs more of us.&lt;/p&gt;

&lt;p&gt;Rahul Banerjee is an independent developer based in India. He builds privacy-first productivity tools using modern web technologies.&lt;/p&gt;

&lt;h1&gt;
  
  
  webdev
&lt;/h1&gt;

&lt;h1&gt;
  
  
  javascript
&lt;/h1&gt;

&lt;h1&gt;
  
  
  webassembly
&lt;/h1&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>productivity</category>
      <category>showdev</category>
    </item>
  </channel>
</rss>
