CodingMation/PDF-Tools

CodingMation PDF Tools is a collection of free, privacy-first PDF utilities that run entirely in your browser. Merge, split, compress, and convert PDFs, or turn images into PDFs — all without uploading a single file. Everything is processed client-side using JavaScript, Canvas, pdf-lib, and PDF.js, so your documents never leave your device.

JavaScript

1

0 commits

updated Sep 15, 2026

See the code
compress-pdf
image-to-pdf
merge-pdf
pdf
pdf-document
pdf-extraction
pdf-generation
pdfjs
pdf-lib
pdf-library
pdf-parser
pdf-processing
pdf-to-image
pdf-tools
pdf-viewer
split-pdf
vanilla-javascript

See what people are saying (1)

SourceMessageScoreDate

I made a 100% offline, privacy-first PDF utility (No uploads, no signup, runs entirely in browser) (r/opensource)

Hey everyone, I was tired of using online PDF tools that force you to upload sensitive documents to their servers. So I built **Simple PDF Tools**. * **How it works:** It uses client-side JavaScript to merge, split, and compress files locally. You can literally turn off your Wi-Fi and the site…

4

Sep 15, 2026

README

CodingMation PDF Tools

Free offline PDF tools — private, fast, no uploads.

Convert, merge, split, and compress PDFs entirely in your browser. Your files never leave your device.

License: MIT Offline No Backend


Tools

ToolPathDescription
Image to PDF/image-to-pdf/Turn JPG, PNG, WebP, GIF, BMP into a PDF
Merge PDF/merge-pdf/Combine multiple PDFs into one
Split PDF/split-pdf/Extract pages or ranges into separate PDFs
PDF to Image/pdf-to-image/Convert PDF pages to PNG or JPEG
Compress PDF/compress-pdf/Reduce PDF file size in the browser

Landing page: /


Live demo

After deploying to GitHub Pages:

https://YOUR_USERNAME.github.io/YOUR_REPO/

Features

  • 100% client-side — no server, no uploads
  • No account or login
  • Works offline after first load (PWA)
  • Clean URLs (/merge-pdf/, not /merge.html)
  • Responsive and accessible
  • Drag-and-drop, reorder, rotate (where applicable)

Privacy

  • Processing happens only in your browser (JavaScript + Canvas + pdf-lib / pdf.js)
  • Files are not sent to any server
  • No tracking of document contents
  • Preferences only (e.g. page size) may use localStorage

Tech

  • HTML5, CSS, vanilla JavaScript (ES modules)
  • pdf-lib — create / merge / split PDFs
  • PDF.js — render PDF pages to images
  • No React, Vue, Node runtime, or backend

Local development

# From this folder
python3 -m http.server 8080

Open http://localhost:8080/.

ES modules require HTTP(S). Do not open index.html via file://.


Deploy to GitHub Pages

  1. Push this repository to GitHub (public repo recommended).
  2. Settings → Pages
  3. Source: Deploy from a branch
  4. Branch: main · Folder: / (root)
  5. Save and wait 1–2 minutes.

Site URL:

https://YOUR_USERNAME.github.io/YOUR_REPO/

Optional: add a custom domain under the same Pages settings.


Project structure

├── index.html              # Promotional landing
├── image-to-pdf/           # Image → PDF
├── merge-pdf/              # Merge PDFs
├── split-pdf/              # Split PDF
├── pdf-to-image/           # PDF → images
├── compress-pdf/           # Compress PDF
├── css/styles.css
├── js/                     # App scripts
├── vendor/                 # pdf-lib, pdf.js (local, no CDN)
├── manifest.json
├── service-worker.js
├── LICENSE
├── CHANGELOG.md
├── CONTRIBUTING.md
└── CODE_OF_CONDUCT.md

Browser support

Modern evergreen browsers (Chrome, Firefox, Edge, Safari — last ~2 years) with support for ES modules, Canvas, and the File API.


Contributing

See CONTRIBUTING.md. Please follow the Code of Conduct.


Changelog

See CHANGELOG.md.


License

MIT © CodingMation

CodingMation/PDF-Tools

CodingMation PDF Tools is a collection of free, privacy-first PDF utilities that run entirely in your browser. Merge, split, compress, and convert PDFs, or turn images into PDFs — all without uploading a single file. Everything is processed client-side using JavaScript, Canvas, pdf-lib, and PDF.js, so your documents never leave your device.

JavaScript

1

0 commits

updated Sep 15, 2026

See the code
compress-pdf
image-to-pdf
merge-pdf
pdf
pdf-document
pdf-extraction
pdf-generation
pdfjs
pdf-lib
pdf-library
pdf-parser
pdf-processing
pdf-to-image
pdf-tools
pdf-viewer
split-pdf
vanilla-javascript

See what people are saying (1)

SourceMessageScoreDate

I made a 100% offline, privacy-first PDF utility (No uploads, no signup, runs entirely in browser) (r/opensource)

Hey everyone, I was tired of using online PDF tools that force you to upload sensitive documents to their servers. So I built **Simple PDF Tools**. * **How it works:** It uses client-side JavaScript to merge, split, and compress files locally. You can literally turn off your Wi-Fi and the site…

4

Sep 15, 2026

README

CodingMation PDF Tools

Free offline PDF tools — private, fast, no uploads.

Convert, merge, split, and compress PDFs entirely in your browser. Your files never leave your device.

License: MIT Offline No Backend


Tools

ToolPathDescription
Image to PDF/image-to-pdf/Turn JPG, PNG, WebP, GIF, BMP into a PDF
Merge PDF/merge-pdf/Combine multiple PDFs into one
Split PDF/split-pdf/Extract pages or ranges into separate PDFs
PDF to Image/pdf-to-image/Convert PDF pages to PNG or JPEG
Compress PDF/compress-pdf/Reduce PDF file size in the browser

Landing page: /


Live demo

After deploying to GitHub Pages:

https://YOUR_USERNAME.github.io/YOUR_REPO/

Features

  • 100% client-side — no server, no uploads
  • No account or login
  • Works offline after first load (PWA)
  • Clean URLs (/merge-pdf/, not /merge.html)
  • Responsive and accessible
  • Drag-and-drop, reorder, rotate (where applicable)

Privacy

  • Processing happens only in your browser (JavaScript + Canvas + pdf-lib / pdf.js)
  • Files are not sent to any server
  • No tracking of document contents
  • Preferences only (e.g. page size) may use localStorage

Tech

  • HTML5, CSS, vanilla JavaScript (ES modules)
  • pdf-lib — create / merge / split PDFs
  • PDF.js — render PDF pages to images
  • No React, Vue, Node runtime, or backend

Local development

# From this folder
python3 -m http.server 8080

Open http://localhost:8080/.

ES modules require HTTP(S). Do not open index.html via file://.


Deploy to GitHub Pages

  1. Push this repository to GitHub (public repo recommended).
  2. Settings → Pages
  3. Source: Deploy from a branch
  4. Branch: main · Folder: / (root)
  5. Save and wait 1–2 minutes.

Site URL:

https://YOUR_USERNAME.github.io/YOUR_REPO/

Optional: add a custom domain under the same Pages settings.


Project structure

├── index.html              # Promotional landing
├── image-to-pdf/           # Image → PDF
├── merge-pdf/              # Merge PDFs
├── split-pdf/              # Split PDF
├── pdf-to-image/           # PDF → images
├── compress-pdf/           # Compress PDF
├── css/styles.css
├── js/                     # App scripts
├── vendor/                 # pdf-lib, pdf.js (local, no CDN)
├── manifest.json
├── service-worker.js
├── LICENSE
├── CHANGELOG.md
├── CONTRIBUTING.md
└── CODE_OF_CONDUCT.md

Browser support

Modern evergreen browsers (Chrome, Firefox, Edge, Safari — last ~2 years) with support for ES modules, Canvas, and the File API.


Contributing

See CONTRIBUTING.md. Please follow the Code of Conduct.


Changelog

See CHANGELOG.md.


License

MIT © CodingMation

Languages

JavaScript

52.2%

HTML

34.0%

CSS

13.7%