Skip to content

Commit dc74995

Browse files
committed
added how it works
1 parent 2652fda commit dc74995

File tree

1 file changed

+15
-3
lines changed

1 file changed

+15
-3
lines changed

README.md

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,14 +43,26 @@ Built with vanilla JavaScript, [pdf-lib](https://pdf-lib.js.org/), [PDF.js](http
4343

4444
## Features
4545

46-
- **100% client-side** all processing happens in the browser using WebAssembly and Canvas APIs
47-
- **No file uploads** files are read and written locally; nothing is sent to any server
48-
- **Works offline** once loaded, the app functions without an internet connection
46+
- **100% client-side:** all processing happens in the browser using WebAssembly and Canvas APIs
47+
- **No file uploads:** files are read and written locally; nothing is sent to any server
48+
- **Works offline:** once loaded, the app functions without an internet connection
4949
- **No watermarks, no sign-up, no limits**
5050
- **Drag & drop** support across all tools
5151

5252
---
5353

54+
## How does it Work?
55+
56+
When you upload a file, it never leaves your device. Here is exactly what happens:
57+
58+
1. **The browser reads the file into memory** using the `FileReader` / `ArrayBuffer` API. The file data lives in your browser's RAM, not on any server.
59+
2. **pdf-lib and PDF.js process it locally** inside your browser tab using JavaScript and WebAssembly.
60+
3. **The result is generated in memory** as a new `Blob` object, still entirely in RAM.
61+
4. **You download it** via a temporary local URL (`URL.createObjectURL`) that the browser creates, triggers the download, then immediately revokes.
62+
5. **When you close the tab**, everything is gone. No trace left anywhere.
63+
64+
No data is ever sent over the network. There is no backend, no database, and no cloud storage involved. You can turn off your WiFi after the page loads and every tool will still work.
65+
5466
## Tools
5567

5668
### Essentials

0 commit comments

Comments
 (0)