Skip to content

MontesanoDev/LibrePDF

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

475 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LibrePDF

Your offline, privacy-first PDF swiss army knife.

Zero cloud. Zero tracking. Zero Electron.

Java 25 JavaFX Privacy First License
LibrePDF UI Demo

Yes, this is a Java desktop app. No, really.

Warning

Disclaimer: LibrePDF is provided "as is", without warranty of any kind. I’m a student working on this in my spare time, not a corporation with a legal team. While I do my best to make it stable and safe, I cannot be held responsible for any data loss or corrupted PDFs. Always keep a backup of your original files.

Why does it exist?

I’ve always used cloud-based sites to manage my PDFs out of laziness and for speed, but I’ve always found the PDF landscape to be a wasteland of clunky software, privacy-invasive solutions, or worse, malware.

LibrePDF doesn’t pretend to take on the cloud giants (I’m just one guy, after all). It was born during a winter semester by a university student who was tired of software spying on his documents, tuition payments, and private data. That’s why, in my spare time and without any grand ambitions, I started working on a project aimed at respecting the user.

The Solution: LibrePDF

LibrePDF is a native, lightweight desktop application designed to handle common PDF tasks without compromising your privacy.

Everything runs 100% locally on your machine. No internet connection required. Your files never leave your disk.

Features

  • Merge: Combine multiple PDF files into a single document effortlessly.
  • Split: Extract specific pages or divide a document into multiple independent files.
  • Flatten: Make filled form fields static, so values can't be modified after sharing — ideal for sealing completed forms and contracts.
  • PDF Info: Inspect a PDF's metadata, security settings, embedded JavaScript, attachments, form fields and more — so you can actually verify what's inside before signing, sharing or trusting it.
  • Clean Metadata: Strip out sensitive or tracking metadata (Author, Software, OS) before sharing.
  • PDF to JPEG: High-quality conversion of your documents into images.
  • Protect: Secure your documents with strong encryption and passwords.
  • Unlock: Remove passwords from PDFs (if you have the original password, of course).

Passwords are always masked and cannot be copied to clipboard. This is not a missing feature — it's a deliberate choice. If you're encrypting sensitive documents, you probably don't want your password visible on screen.


Data & Privacy

LibrePDF itself does not collect, transmit, or persist user data.

By design, LibrePDF includes:

  • No telemetry
  • No analytics
  • No crash reporting
  • No update checks
  • No accounts
  • No cloud upload
  • No background services
  • No application database
  • No document history
  • No persistent LibrePDF log files

LibrePDF only accesses files explicitly selected by the user through the file chooser or drag-and-drop. All operations run locally and write new output files without overwriting the originals.

Note: the Java runtime, JavaFX, the operating system, or PDFBox may create their own technical caches or diagnostics outside LibrePDF's application logic.

Under the Hood

LibrePDF is written in Pure Java 25, uses JavaFX (yes, in 2026), and AtlantaFX for the UI. The engine powering the PDF logic is Apache PDFBox.

To keep things light, LibrePDF uses vector iconography directly embedded in the CSS (-fx-shape):

Prerequisites

  • JDK 25+

Getting Started

Clone the repo and run:

mvn javafx:run

Platform support

OS Status
Windows ✅ Primary dev platform
Linux ⚠️ Should work but unverified — please open an issue if it doesn't
macOS ❌ Not supported

Contributing

PRs are welcome — but the feature scope is closed. Bug fixes, UX polish, translations, performance tweaks and Linux fixes are all fair game. New PDF operations and anything that talks to the network are not.

Read CONTRIBUTING.md before opening a PR.

AI Disclosure

The project isn't "vibe-coded". I used AI to help with translations, review some logic (since I was busy failing my Calculus exam), and polish a few bits here and there—so you know who to blame if you lose your thesis!

At first, I had thought about having the project logo generated by artificial intelligence, but then I decided against it. If you know how to draw, feel free to contribute!

If you have any questions, please email: info@leonardomontemurro.it

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.

About

Privacy-first PDF tools. No cloud. No telemetry. Just local processing.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors