This page explains the security model of WebFileTools in everyday language: where your files go, what the static host does, and how optional site metrics relate to the tools.
Your file
│
▼
Browser (this device)
│ process locally
▼
Download result
No upload API — your files are not sent to WebFileTools servers.
Site analytics (GA) and the home-page visit counter are separate from file processing.
Conversion and editing run in your browser. You pick a file, the page processes it locally with Web APIs and bundled libraries, then you download or copy the result.
Because there is no conversion upload API, your tool files are not sent to a WebFileTools server for processing.
GitHub Pages delivers the static site (scripts, styles, and assets). Those files are what your browser downloads to run the tools.
After the page loads, file contents you select for tools are handled inside the browser on your device. The static host is not a processing backend for your documents.
You still trust the published JavaScript the same way you trust any website: if the page is compromised or a dependency is malicious, code in the browser can read what you give it. Prefer the official GitHub Pages URL for this project and keep your browser up to date.
Optional Google Analytics and the home-page visit counter measure site traffic. They are separate from file tools.
Your files are not included in those metrics. File contents and conversion payloads are not sent to analytics or to the counter for processing.
The visit counter image request may still expose ordinary request metadata (such as IP address) to the counter provider when the home page loads.
Local processing reduces the risk of “upload my document to an unknown conversion server,” but it does not remove every browser risk.
- Cross-site scripting (XSS) or a malicious script in the page could still access data in that browser tab. Keeping the browser updated and avoiding untrusted extensions on sensitive work helps.
- Other sites or malware on your device are outside this project’s control.
- Very large files can stress memory and make the tab unstable; that is a reliability concern as well as a safety one.
- Hosting: GitHub Pages (static files only; no app backend)
- App: TypeScript, React, Vite, Tailwind CSS
- Browser APIs: File, Canvas, Web Crypto, and similar client APIs
- Libraries (examples): pdf-lib, PDF.js, JSZip, js-tiktoken, markdown-it, qrcode / jsQR, js-yaml, diff
- Optional metrics: Google Analytics; home visit counter via count.getloli.com
- License: MIT
If you believe you found a security issue in the published site or source code, please open a GitHub Issue with enough detail for maintainers to reproduce and fix it. Prefer responsible disclosure: avoid posting exploit details that put users at immediate risk until a fix is available when that is practical.