π Live Demo: https://thejhyefactor.github.io/pdf-tools/
A professional-grade PDF manipulation suite that runs entirely in your browser. No uploads, no servers, no tracking β complete privacy.
"Did professional PDF operations entirely client-side β nothing uploaded."
All PDF processing happens locally in your browser using cutting-edge web technologies:
- PDF.js for rendering
- pdf-lib for manipulation
- Tesseract.js for OCR
- HTML5 Canvas for drawing/annotation
- Extract page ranges (pages 5-10)
- Split every N pages
- Extract specific pages (1,3,5-7)
- Download individual sections
- Combine multiple PDFs into one
- Drag-and-drop to reorder
- Preserve all content and formatting
- Draw redaction boxes on pages
- Permanently remove sensitive content
- Navigate through multi-page documents
- Visual preview before applying
- Add text annotations
- Highlight important sections
- Draw rectangles and shapes
- Add arrows and callouts
- Custom colors
- Draw your signature with mouse/touch
- Type your name in signature fonts
- Upload an image of your signature
- Place signature anywhere on document
- Extract text from scanned PDFs
- Multi-language support (English, Spanish, French, German)
- Process single or all pages
- Copy extracted text
- Download as TXT file
- Three compression levels:
- Low (Best Quality)
- Medium (Balanced)
- High (Smallest Size)
- See before/after file sizes
- Percentage reduction displayed
Most PDF tools require you to upload your documents to their servers. This means:
- Your sensitive data leaves your computer
- You don't know who has access
- Documents may be stored/analyzed
- Privacy policies can change
PDF Power Tools is different:
- β Zero uploads - Files never leave your device
- β Zero tracking - No analytics, no cookies
- β Zero accounts - No signup required
- β 100% client-side - All processing in your browser
- β Open source - Inspect the code yourself
Perfect for:
- Legal documents
- Medical records
- Financial statements
- HR documents
- Contracts
- Personal files
<!-- PDF Rendering -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/pdf.js/3.11.174/pdf.min.js"></script>
<!-- PDF Creation/Manipulation -->
<script src="https://unpkg.com/pdf-lib@1.17.1/dist/pdf-lib.min.js"></script>
<!-- OCR Text Recognition -->
<script src="https://cdn.jsdelivr.net/npm/tesseract.js@4/dist/tesseract.min.js"></script>- PDF.js - Mozilla's PDF rendering engine
- pdf-lib - Create and modify PDFs
- Tesseract.js - OCR text extraction
- HTML5 Canvas API - Drawing and annotations
- File API - Local file handling
- Vanilla JavaScript - No framework overhead
pdf-tools/
βββ index.html # Main interface
βββ style.css # Professional styling
βββ app.js # Core application logic
βββ README.md # This file
- Clone or download this repository
- Open
index.htmlin a modern browser - Start working with PDFs immediately!
# No build step required!
open index.html- Push to GitHub
- Enable GitHub Pages in repository settings
- Share the URL - it works for everyone!
- Click "Upload Files" and select your PDF
- Navigate to "Split PDF"
- Choose split mode:
- Range: Extract pages 10-20
- Every N: Create 5-page chunks
- Specific: Get pages 1,5,10,15
- Click "Split PDF" - downloads automatically
- Upload all PDFs you want to combine
- Go to "Merge PDFs"
- Drag items to reorder them
- Click "Merge All PDFs"
- Download the combined file
- Upload PDF with sensitive content
- Select "Redact" tool
- Choose your file from dropdown
- Click and drag to draw black boxes over text
- Navigate between pages as needed
- Click "Apply Redactions"
- Download permanently redacted PDF
- Upload a scanned PDF (image-based)
- Go to "OCR" tool
- Select language
- Choose single page or all pages
- Click "Extract Text"
- Wait for processing
- Copy text or download as TXT
- Upload PDF to sign
- Go to "Sign" tool
- Create signature:
- Draw with mouse
- Type your name
- Upload signature image
- Navigate to signature page
- Click to place signature
- Download signed PDF
- Redact client information
- Sign contracts electronically
- Split case files by section
- Merge evidence documents
- Redact patient identifiers (HIPAA)
- Extract text from scanned records
- Merge patient histories
- Compress large imaging reports
- Sign NDAs and agreements
- Redact confidential data
- Merge quarterly reports
- Extract data from invoices
- Compress photos-heavy documents
- Sign rental agreements
- Merge tax documents
- Split large manuals
Works in all modern browsers:
- β Chrome 90+
- β Firefox 88+
- β Safari 14+
- β Edge 90+
Note: OCR processing is memory-intensive. For best performance:
- Use on desktop/laptop
- Process fewer pages at once on mobile
- Close other browser tabs
Recommended maximum file sizes:
- Split/Merge: 50MB per file
- Redact/Annotate: 20MB (for smooth canvas rendering)
- OCR: 10MB (processing-intensive)
- Compress: 50MB
Typical processing times on modern hardware:
- Split/Merge: ~1-2 seconds per 100 pages
- Redaction: Real-time preview
- OCR: ~3-5 seconds per page
- Compression: ~2-3 seconds per 100 pages
- No Network Transmission: Files never sent to servers
- Memory-Only Processing: Files cleared when page closes
- No Local Storage: Nothing saved to disk except your downloads
- Open Source: Audit the code yourself
While this tool is private and secure:
- Downloaded files are saved to your computer (as expected)
- Browser extensions could theoretically access page content
- Shared computers: others with access could see download history
Best Practice: Use in private browsing mode for maximum privacy.
- Annotations: Basic implementation (text/shapes preview)
- Compression: Limited optimization (pdf-lib constraints)
- OCR: Slower on large documents
- Signatures: Canvas-based (not cryptographic)
- Batch processing multiple files
- Password protection for PDFs
- More annotation tools (arrows, stamps)
- Cryptographic digital signatures
- Image extraction from PDFs
- Advanced compression algorithms
This is a portfolio/demonstration project, but contributions are welcome!
- Better compression algorithms
- More signature fonts
- Additional OCR languages
- Batch operations
- Undo/redo functionality
- Keyboard shortcuts
MIT License - Free to use, modify, and distribute.
Built by Jhye O'meley (@TheJhyeFactor)
Showcasing:
- Client-side web application development
- Privacy-focused design
- Complex PDF manipulation
- Modern JavaScript patterns
- Professional UI/UX
This project demonstrates:
- Privacy-First Design - Building tools that respect user data
- Client-Side Processing - Leveraging browser capabilities
- Professional UI - Clean, intuitive interface
- Real-World Utility - Solving actual user problems
- Technical Depth - PDF manipulation, OCR, canvas drawing
Perfect for portfolio demonstrations:
"I built a complete PDF manipulation suite that runs entirely in the browser with zero uploads, featuring split/merge, redaction, OCR, signatures, and compression."
Check out the code! Everything is commented and organized for easy understanding.
Remember: Your files never leave your browser. Privacy guaranteed. π