Safe Layer sanitizes images and PDF documents locally in the browser before they are shared for government, official, or professional procedures.
- English and Spanish interface with a persistent light/dark theme.
- Permanent black redactions in exported files.
- Per-page cropping and left/right rotation for images and PDFs.
- Explicit per-page redaction mode, reset action, and page deletion with confirmation.
- Multi-file workspace with additional image/PDF page imports.
- Page preview sidebar to reorder pages by drag and drop (mouse, touch long-press, or Alt + ↑/↓).
- Export every page as an individual PNG or combine all pages into one PDF.
- Grayscale and the localized
copy/copiawatermark are enabled automatically. - Adjustable watermark weight with a slider.
- Repeating wave-shaped watermark with consistent spacing for text of any length.
- Local browser processing; this version does not upload documents to a server.
- Branded favicon and social preview card for shared links.
The creator banner links to @davidgcs and the
Safe Layer repository. To reuse it in
another static app, copy the .github-brand element from index.html,
copy github-brand.css, and link the stylesheet from the new app's <head>.
git clone https://github.com/davidgcs/safelayer.git
cd safelayer
python3 -m http.server 8000Then open http://localhost:8000.
The application loads PDF.js and pdf-lib from public CDNs, so an internet connection is required when opening or exporting PDF files.