<?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: lian</title>
    <description>The latest articles on DEV Community by lian (@liulian637).</description>
    <link>https://dev.to/liulian637</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%2F3940646%2F3281241c-d2e4-4251-8a8c-2c69cdaf06f8.png</url>
      <title>DEV Community: lian</title>
      <link>https://dev.to/liulian637</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/liulian637"/>
    <language>en</language>
    <item>
      <title>I Built a Privacy-First PDF Toolbox That Runs Entirely in Your Browser</title>
      <dc:creator>lian</dc:creator>
      <pubDate>Sun, 24 May 2026 01:00:31 +0000</pubDate>
      <link>https://dev.to/liulian637/i-built-a-privacy-first-pdf-toolbox-that-runs-entirely-in-your-browser-1b93</link>
      <guid>https://dev.to/liulian637/i-built-a-privacy-first-pdf-toolbox-that-runs-entirely-in-your-browser-1b93</guid>
      <description>&lt;h1&gt;I Built a Privacy-First PDF Toolbox That Runs Entirely in Your Browser&lt;/h1&gt;

&lt;h2&gt;The Problem&lt;/h2&gt;

&lt;p&gt;We've all been there — you need to merge a few PDFs, extract some pages, or add a watermark. So you search for "free PDF tool" and land on a site that:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Asks you to upload your files to &lt;strong&gt;their server&lt;/strong&gt;
&lt;/li&gt;
  &lt;li&gt;Limits you to &lt;strong&gt;2 files per day&lt;/strong&gt; unless you pay&lt;/li&gt;
  &lt;li&gt;Shows &lt;strong&gt;ads everywhere&lt;/strong&gt;
&lt;/li&gt;
  &lt;li&gt;Makes you wonder who now has a copy of your contract/resume/medical form&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I wanted something better.&lt;/p&gt;

&lt;h2&gt;The Solution&lt;/h2&gt;

&lt;p&gt;Meet &lt;strong&gt;&lt;a href="https://pdf8.vip" rel="noopener noreferrer"&gt;PDF8&lt;/a&gt;&lt;/strong&gt; — a completely free, privacy-first PDF toolbox that runs &lt;strong&gt;100% in your browser&lt;/strong&gt;. Your files never touch a server.&lt;/p&gt;

&lt;p&gt;Built with Next.js and powered by &lt;code&gt;pdf-lib&lt;/code&gt;, everything happens client-side using WebAssembly and native JavaScript. Once the page loads, you can even go offline and it still works.&lt;/p&gt;

&lt;h2&gt;8 Tools, All Free&lt;/h2&gt;

&lt;h3&gt;1. Merge PDFs&lt;/h3&gt;

&lt;p&gt;Combine multiple PDFs into one file. Drag-and-drop, reorder, done.&lt;/p&gt;

&lt;h3&gt;2. Extract Pages&lt;/h3&gt;

&lt;p&gt;Pull out specific pages by number (e.g. &lt;code&gt;1, 3-5&lt;/code&gt;) into a new PDF. Perfect for splitting large documents.&lt;/p&gt;

&lt;h3&gt;3. Delete Pages&lt;/h3&gt;

&lt;p&gt;Remove covers, blank pages, or anything you don't need.&lt;/p&gt;

&lt;h3&gt;4. Rotate Pages&lt;/h3&gt;

&lt;p&gt;Fix scanned documents that came out sideways or upside down. Supports 90°, 180°, and 270° rotation.&lt;/p&gt;

&lt;h3&gt;5. Add Watermark&lt;/h3&gt;

&lt;p&gt;Overlay translucent text (e.g. "CONFIDENTIAL", "DRAFT") on every page.&lt;/p&gt;

&lt;h3&gt;6. Add Page Numbers&lt;/h3&gt;

&lt;p&gt;Automatically number pages at the bottom center. Configurable starting number.&lt;/p&gt;

&lt;h3&gt;7. Images to PDF&lt;/h3&gt;

&lt;p&gt;Turn JPG/PNG images into a single PDF document. Great for receipts, ID scans, or photo collections.&lt;/p&gt;

&lt;h3&gt;8. Clear Metadata&lt;/h3&gt;

&lt;p&gt;Strip document metadata like title, author, subject, and keywords. Note: this is not content redaction — visible text stays intact.&lt;/p&gt;

&lt;h2&gt;Why I Built This&lt;/h2&gt;

&lt;p&gt;I handle a lot of PDFs for work — contracts, proposals, scanned documents. Every time I used an online tool, I felt uneasy about uploading sensitive files to some unknown server. Self-hosting solutions existed but required setup. Desktop software was overkill.&lt;/p&gt;

&lt;p&gt;So I built a middle ground: &lt;strong&gt;a zero-setup web app that respects your privacy by design&lt;/strong&gt;. No accounts, no uploads, no limits.&lt;/p&gt;

&lt;h2&gt;Tech Stack&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;
&lt;strong&gt;Framework:&lt;/strong&gt; Next.js 16 (App Router)&lt;/li&gt;
  &lt;li&gt;
&lt;strong&gt;PDF Engine:&lt;/strong&gt; pdf-lib (client-side only)&lt;/li&gt;
  &lt;li&gt;
&lt;strong&gt;Styling:&lt;/strong&gt; Tailwind CSS v4&lt;/li&gt;
  &lt;li&gt;
&lt;strong&gt;Deployment:&lt;/strong&gt; Vercel (static export)&lt;/li&gt;
  &lt;li&gt;
&lt;strong&gt;Language:&lt;/strong&gt; TypeScript&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;What's Next&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;PDF compression&lt;/li&gt;
  &lt;li&gt;Form filling&lt;/li&gt;
  &lt;li&gt;Annotation tools&lt;/li&gt;
  &lt;li&gt;More export formats&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Check it out at &lt;strong&gt;&lt;a href="https://pdf8.vip" rel="noopener noreferrer"&gt;https://pdf8.vip&lt;/a&gt;&lt;/strong&gt; — it's free, it's fast, and your data stays yours.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Built with ❤️ for the open web. No tracking, no uploads, no nonsense.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>webdev</category>
      <category>programming</category>
      <category>productivity</category>
    </item>
    <item>
      <title>I Built a PDF Tool That Runs Entirely in Your Browser — No Upload, No Privacy Concerns</title>
      <dc:creator>lian</dc:creator>
      <pubDate>Tue, 19 May 2026 15:58:01 +0000</pubDate>
      <link>https://dev.to/liulian637/i-built-a-pdf-tool-that-runs-entirely-in-your-browser-no-upload-no-privacy-concerns-34p5</link>
      <guid>https://dev.to/liulian637/i-built-a-pdf-tool-that-runs-entirely-in-your-browser-no-upload-no-privacy-concerns-34p5</guid>
      <description>&lt;h1&gt;I Built a PDF Tool That Runs Entirely in Your Browser — No Upload, No Privacy Concerns&lt;/h1&gt;


&lt;p&gt;A few weeks ago, I needed to merge some PDF files. I went to one of those "free online PDF tools" sites, uploaded my documents, and then it hit me — I just sent my personal files to some server I know nothing about.&lt;/p&gt;


&lt;p&gt;That's when I decided to build &lt;a href="https://pdf8.vip" rel="noopener noreferrer"&gt;pdf8.vip&lt;/a&gt;.&lt;/p&gt;


&lt;h2&gt;The Problem&lt;/h2&gt;


&lt;p&gt;Almost every "free" PDF tool requires uploading your files to their cloud. You have to trust them with your documents —&lt;br&gt;
  contracts, resumes, personal forms. And for what? A simple merge or compress operation.&lt;/p&gt;


&lt;p&gt;Some charge for basic features. Others impose file size limits. Many are riddled with ads.&lt;/p&gt;


&lt;h2&gt;The Solution&lt;/h2&gt;


&lt;p&gt;&lt;a href="https://pdf8.vip" rel="noopener noreferrer"&gt;pdf8.vip&lt;/a&gt; is different — everything runs inside your browser. Files never leave your&lt;br&gt;
  computer.&lt;/p&gt;


&lt;p&gt;Here's what it does right now:&lt;/p&gt;


&lt;p&gt;✅ Merge PDFs — Combine multiple files into one, drag to reorder pages&lt;br&gt;&lt;br&gt;
  ✅ 100% free — No sign-up, no credit card, no hidden limits&lt;br&gt;&lt;br&gt;
  ✅ Privacy first — Client-side processing, zero upload&lt;br&gt;&lt;br&gt;
  ✅ No ads — Clean, distraction-free UI&lt;br&gt;&lt;br&gt;
  ✅ Up to 50MB per file — Generous limits for most use cases&lt;/p&gt;


&lt;h2&gt;How It Works&lt;/h2&gt;


&lt;p&gt;1. Open pdf8.vip&lt;br&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Drag and drop your PDF files (or click to select)
&lt;/li&gt;
&lt;li&gt;Reorder pages by dragging
&lt;/li&gt;
&lt;li&gt;Click merge — done&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;The file never touches a server. Using pdf-lib, the entire merge process happens in your browser via WebAssembly.&lt;/p&gt;


&lt;h2&gt;What's Coming&lt;/h2&gt;


&lt;p&gt;🔜 PDF Split&lt;br&gt;&lt;br&gt;
  🔜 PDF Compress&lt;br&gt;&lt;br&gt;
  🔜 PDF to JPG / JPG to PDF&lt;br&gt;&lt;br&gt;
  🔜 More format conversions&lt;/p&gt;


&lt;h2&gt;Tech Stack&lt;/h2&gt;


&lt;p&gt;Next.js 16 — App Router, Turbopack&lt;br&gt;&lt;br&gt;
  pdf-lib — Client-side PDF processing&lt;br&gt;&lt;br&gt;
  Tailwind CSS — Styling&lt;br&gt;&lt;br&gt;
  Vercel — Hosting&lt;/p&gt;


&lt;h2&gt;Why I'm Sharing This&lt;/h2&gt;


&lt;p&gt;I believe basic PDF tools should be free and private. No uploads. No data collection. Just a tool that works in your&lt;br&gt;
  browser.&lt;/p&gt;


&lt;p&gt;I'd love your feedback — feature requests, bug reports, or just a star on what you'd like to see next.&lt;/p&gt;


&lt;p&gt;&lt;strong&gt;Try it here → &lt;a href="https://pdf8.vip" rel="noopener noreferrer"&gt;&lt;/a&gt;&lt;a href="https://pdf8.vip" rel="noopener noreferrer"&gt;https://pdf8.vip&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;





&lt;p&gt;&lt;em&gt;Built with Next.js, deployed on Vercel. Source feedback welcome in the comments!&lt;/em&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>privacy</category>
    </item>
  </channel>
</rss>
