How wongyc-66/my-pdf-tool works
PDF Studio is a local-in-browser PDF utility. The user uploads a PDF, previews its pages, then either splits every page into PDFs in a ZIP or reorders/deletes pages and downloads a revised PDF. The graph separates UI, workflow, and PDF processing. Source excerpts show the main controller’s calls and the processing implementation; README statements support the documented editing and download capabilities. External library links are shown where the processing code uses their globals.
Main entry points: main.js Workflow controller · pdf-service.js PDF loading · index.html PDF interface · dom.js DOM rendering
Components 13
Browser interface
- PDF interface
index.html - DOM rendering
js/dom.js
PDF workflows
- Workflow controller
js/main.js - Page reorder and delete
js/main.js - Browser download
js/main.js
PDF processing
- PDF loading
js/pdf-service.js - Page previews
js/pdf-service.js - Split and ZIP
js/pdf-service.js - Revised PDF
js/pdf-service.js
Other components
- User
- PDF.js
- pdf-lib
- JSZip
Connections 16
- User → PDF interface: uploads PDF
readme.md - PDF interface → Workflow controller: starts workflow
- Workflow controller → DOM rendering: updates UI
js/main.js - Workflow controller → PDF loading: loads file
js/main.js - PDF loading → PDF.js: opens preview
js/pdf-service.js - PDF loading → pdf-lib: loads PDF
js/pdf-service.js - Workflow controller → Page previews: requests thumbnails
js/main.js - Page previews → PDF.js: renders pages
js/pdf-service.js - User → Page reorder and delete: reorders or deletes
readme.md - Page reorder and delete → DOM rendering: refreshes page cards
js/main.js - Workflow controller → Split and ZIP: creates ZIP
js/main.js - Split and ZIP → pdf-lib: copies pages
js/pdf-service.js - Split and ZIP → JSZip: packages PDFs
js/pdf-service.js - Workflow controller → Revised PDF: exports page order
js/main.js - Revised PDF → pdf-lib: copies pages
js/pdf-service.js - Workflow controller → Browser download: downloads result
js/main.js