A free, open-source web application for adding watermarks to PDF documents entirely in your browser. All processing happens locally on your device with no uploads, accounts, or data retention.
- 100% Client-Side Processing - Your PDFs never leave your device
- Drag & Drop Interface - Simple, intuitive file upload
- Customizable Watermarks - Full control over text, styling, and positioning
- Real-Time Preview - See changes instantly before downloading
- Page Range Support - Apply watermarks to specific pages or ranges
- GDPR Compliant - No data collection, tracking, or server communication
- Open Source - Full transparency with publicly available code
- Text Content - Add any custom text (up to 50 characters)
- Fonts - Choose from Helvetica, Times New Roman, Courier, Arial, and more
- Styling - Adjust size, color, and opacity
- Positioning - Set rotation angle and precise X/Y offsets
- Tiling - Option to repeat watermark across the page with custom spacing
- Page Selection - Apply to all pages or specific page ranges (e.g., "1-5, 8, 10-12")
- Open the application in your web browser
- Drag and drop a PDF file or click to browse
- Customize your watermark settings
- Preview the result
- Download your watermarked PDF
- Frontend Only - Pure HTML, CSS, and JavaScript
- PDF Processing - Built with PDF-lib for client-side PDF manipulation
- File Size Limit - 50 MB maximum
- Browser Compatibility - Modern browsers with ES6+ support
Try it now: PDF Protect
├── index.html # Main application interface
├── app.js # Core JavaScript functionality
├── styles.css # Application styling
├── site.webmanifest # PWA manifest
└── favicon files # App icons
To run locally:
-
Clone the repository:
git clone https://github.com/ToritoIO/PDF-Protect.git cd PDF-Protect
-
Serve the files using any HTTP server:
# Using Python 3 python3 -m http.server 8000 # Using Node.js npx serve . # Using PHP php -S localhost:8000
-
Open
http://localhost:8000
in your browser
Contributions are welcome! Please feel free to submit issues, feature requests, or pull requests.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is open source and available under the MIT License.
Made with ❤️ for privacy-conscious PDF processing