# DevilDocs DevilDocs is a static, browser-first PDF workspace designed for internal agency use. ## Included tools ### Core PDF - Merge PDFs - Split or extract page ranges - Organize pages with drag-and-drop reorder, rotate, and remove - Add page numbers - Add custom borders and margins ### Convert - Images to PDF (JPG, PNG, WebP) - Office / HTML to PDF - HTML to PDF - Word (.docx) to PDF in text-first mode - Excel (.xlsx) to PDF with table preview - PowerPoint (.pptx) to PDF in text-first slide mode - PDF to images (PNG or JPG ZIP) - PDF export suite - PDF to text - PDF to HTML - PDF to Word-compatible RTF - PDF to Excel - PDF to PowerPoint ### Edit & Sign - Signature and stamp studio - upload signature image - camera capture input for phones - move, resize, duplicate, layer, opacity, and blend mode control - add watermark text and add text stamps - Markup studio - add text - add images - draw - highlight - add shapes - comments / annotations - whiteout / erase - flattened redaction output ### Extract & Secure - Extract embedded images from PDF - Password / encrypt tool - inspect encrypted PDF status - add or update protection - remove protection when the password is known ## Why this build is Hostinger-friendly This package is built as a static web app: - no Node server required for the main UI - no local PDF binaries required - most processing stays in the browser - suitable for standard Hostinger web hosting / `public_html` ## Deployment ### Standard Hostinger web hosting 1. Upload the ZIP contents into `public_html` 2. Make sure `index.html` is in the root of `public_html` 3. Visit your domain ### Subfolder install 1. Create a folder such as `public_html/devildocs` 2. Upload all files into that folder 3. Open `https://yourdomain.com/devildocs/` ## Project structure ```text devildocs/ index.html README.md .htaccess assets/ style.css app.js ``` ## CDN libraries used This starter loads its browser libraries from public CDNs: - pdf-lib - pdf.js - JSZip - SortableJS - Fabric.js - html2canvas - SheetJS - PptxGenJS - LibPDF (loaded dynamically only for security actions) ## Important behavior notes ### Static-build tradeoffs This is a practical internal-use build, not a full server-side document conversion engine. That means: - Word / PowerPoint conversion is text-first rather than pixel-perfect for very complex files - Markup and signature studio exports are flattened into image-based PDF pages to preserve overlays reliably - Redaction in the markup studio is permanent in the flattened export output ### Security tool The security tool requires the current password to inspect or unlock protected PDFs. It does not recover, guess, or crack passwords. ### Embedded image extraction The image extractor looks for raster image objects embedded inside the PDF. If a PDF is mostly vector artwork or page screenshots, it may find fewer results than page rendering export. ## Best use cases - agency document cleanup - combining proposals, contracts, invoices, decks, and annexures - stamping signed pages internally - annotating client drafts without third-party sites - exporting PDF pages for design teams - extracting text and embedded assets from incoming PDFs ## Recommended browsers Use the latest Chrome, Edge, or Safari for the best performance. ## Rebranding To change branding quickly: - edit the title and hero text in `index.html` - adjust theme variables in `assets/style.css` - change default watermark / stamp labels in `assets/app.js` ## Next upgrade path if you want full fidelity later Move to a VPS or Node-based version when you want: - higher-fidelity Office conversions - OCR on scanned PDFs - non-flattened annotation output - server queues for very large files - team authentication and audit trails