这些工具用到的开源软件

这些工具在很大程度上,是对别人做的开源工作的一次细心组装。下面是在你浏览器里运行的东西,以及它们各自的许可证。

SoftwareLicenceUsed for
DB-IP Country LiteCC BY 4.0IP → country table, downloaded once and searched inside your browser (What is my IP)
tldtsMITPublic Suffix List lookups for the DMARC organisational domain
@noble/ed25519MITEd25519 DKIM signatures where the browser has no Ed25519 in WebCrypto
disposable-email-domainsMITList of throwaway e-mail domains
pdf-libMITWriting and editing PDF files
pdf.js (pdfjs-dist)Apache-2.0Rendering PDF pages and extracting text
libheif (libheif-js)LGPL-3.0Decoding HEIC/HEIF photos
jSquash codecsApache-2.0JPEG, PNG, WebP and AVIF encoding (MozJPEG, libwebp, libavif, OxiPNG)
FFmpeg (ffmpeg.wasm)GPL-2.0-or-laterVideo and audio conversion
Tesseract (tesseract.js)Apache-2.0Optical character recognition
OpenCV (@techstark/opencv-js)Apache-2.0Document edge detection in the camera scanner
ONNX Runtime WebMITRunning the background-removal models
U-2-NetpApache-2.0Background removal — fast model
MODNetApache-2.0Background removal — portrait model
ISNet general useMITBackground removal — high-quality model
SheetJS (xlsx)Apache-2.0Reading and writing Excel files
MammothBSD-2-ClauseConverting DOCX to HTML
MarkedMITMarkdown to HTML
TurndownMITHTML to Markdown
PrettierMITFormatting JSON, HTML, CSS, JavaScript, Markdown and YAML
sql-formatterMITFormatting SQL
js-yamlMITYAML parsing
PapaParseMITCSV parsing
jsdiffBSD-3-ClauseText comparison
pixelmatchISCVisual comparison of rendered pages
QRCodeMITQR code generation
JsBarcodeMITCODE128, EAN-13/JAN and ITF barcodes
zxing-wasm (zxing-cpp)MIT / Apache-2.0Reading QR codes and barcodes
qpdf (@jspawn/qpdf-wasm)Apache-2.0AES-256 PDF encryption, decryption and structure inspection
kuromoji.js + IPADICApache-2.0Japanese morphological analysis for furigana
kanji (data lists)MPL-2.0JLPT and school-grade kanji lists
HarfBuzz (harfbuzzjs)MIT / Old MITFont subsetting (hb-subset)
woff2 (wawoff2)MIT / Apache-2.0WOFF2 compression
opentype.jsMITBuilding TrueType fonts from drawn glyphs
JSZipMITBuilding ZIP downloads
exifrMITReading EXIF, IPTC and XMP metadata
c2pa-webMITVerifying C2PA Content Credentials
SortableJSMITDrag-and-drop reordering
LOCAMITFew-shot object counting model (the “count anything” mode of the photo counter)
Vite + vite-plugin-pwa (Workbox)MITBuild tooling and the offline service worker

LGPL 声明(libheif)

HEIC/HEIF 的解码使用 libheif,采用 LGPL v3 许可。它作为一个独立、未经修改的 WebAssembly 文件提供,并没有链接进我们自己的代码,所以你可以自由地用你自己编译的同一个库把它替换掉。源码见上面的链接。

GPL 声明(FFmpeg)

视频和音频工具会在你使用它们的那一刻,从公共 CDN(jsDelivr)加载 ffmpeg.wasm。那一版 FFmpeg 采用 GPL v2 或更高版本许可;它的源码由 FFmpeg 项目和上面链接处的 ffmpeg.wasm 项目发布。

模型

机器学习模型会在你使用需要它们的工具时从 Hugging Face 下载,之后由你的浏览器缓存。我们特意只用许可宽松的模型 —— 不要“禁止商用”的权重,也不要任何会给使用这些页面的人带来 copyleft 义务的东西。