Skip to content

Open-source licenses

The tools run on your device, which means the code runs on your device too. Here is all of it, and what it is licensed under.

The full text

The license text of every package bundled into this app, in full: third-party-licenses.txt. It is assembled at build time from the packages the build actually included, not from a hand-kept list, so it describes the exact version you are running.

A few things are named there rather than reproduced, because the artifacts this build pins ship no license file to copy: the PDFium engine, whose linked components are classified rather than quoted (PDFium and each of those libraries publish their own license text upstream), the QPDF WebAssembly wrapper and the @pdf-lib/fontkit package, which declares MIT without including the text. Each is identified with its license in the tables below.

discreetPDF itself

The client is licensed under the GNU Affero General Public License v3.0 or later, and the full text is included in the file linked above. The repository is still being prepared for publication, and this page will link it the day it goes public. That applies to my own code. The third-party source this app ships is a separate question, and it is already published by the projects that wrote it. The server component that handles accounts and payments is not covered by that license and is not part of what runs in your browser.

Engines shipped to your browser

Compiled binaries built from unmodified upstream source. Most are fetched separately rather than bundled into the app, though pdf.js ships inside the bundle, as does QPDF's Emscripten glue, and PDFium is compiled for this site rather than redistributed as someone else's binary.

EngineLicenseUsed for
PDFiumBSD-3-ClauseRendering, text extraction, editing, unlock
QPDFApache-2.0 (wasm wrapper: ISC)Password protection
TesseractApache-2.0Optical character recognition
pdf.jsApache-2.0Page rendering alongside PDFium, and font parsing

Inside the PDF engine

PDFium is built from source for this site, and links these libraries into the single pdfium.wasm file your browser downloads. None of them are copyleft.

ComponentLicense
PDFiumBSD-3-Clause
FreeTypeFreeType License (FTL)
libjpeg-turboBSD-3-Clause / IJG / Zlib
OpenJPEGBSD-2-Clause
libpnglibpng License
zlibZlib License
Little CMS (lcms2)MIT
Anti-Grain GeometryAGG License (BSD-like)
AbseilApache-2.0
bigintPublic Domain
libtifflibtiff License
ICUUnicode License

The PDFium runtime this site ships carries no per-component license texts of its own, so for this section the linked file records the classification above rather than reproducing each license. Every project listed publishes its own text, and the linked file names where PDFium’s lives upstream.

Typefaces

Twenty-two families are used under the SIL Open Font License 1.1, including Inter, Open Sans, EB Garamond, Lora, JetBrains Mono and Source Serif 4. Arimo is under Apache-2.0, and DejaVu Sans under the Bitstream Vera and Arev licenses. They are embedded unmodified, for rendering pages and for embedding into the PDFs you create.

Everything else

The interface and document tooling are built on React, React Router, Zustand, pdf-lib, docx, ExcelJS, html2canvas and fflate, among others, permissive throughout (MIT, Apache-2.0 and similar). The complete list with versions and full texts is in third-party-licenses.txt.

Something missing?

If you believe a component is attributed incorrectly or is missing, please tell me and I will fix it.