Benchmo’s tools are built on open-source software. This page lists everything that is sent to your browser, the license it comes under, and where to get its source.
Sent to your browser
| Software | Version | Used for | License |
|---|---|---|---|
| libheif-js | 1.23.5 | Reading HEIC photos (HEIC to JPG) | LGPL-3.0 |
| libheif, inside libheif-js | as bundled | HEIF container decoding | LGPL-3.0 |
| libde265, inside libheif-js | as bundled | HEVC image decoding | LGPL-3.0 |
jSquash (@jsquash/jpeg, /png, /webp, /avif, /oxipng) |
1.6.0, 3.1.1, 1.5.0, 2.1.1, 2.3.0 | Reading and writing JPG, PNG, WebP and AVIF | Apache-2.0 |
| MozJPEG, inside jSquash | as bundled | JPEG decoder and encoder | IJG, BSD-3-Clause, zlib (full text) |
| libwebp, inside jSquash | as bundled | WebP decoder and encoder | BSD-3-Clause (full text) |
| libavif and libaom, inside jSquash | as bundled | AVIF decoder | BSD-2-Clause; libaom also under the AOMedia Patent License 1.0 (full text) |
| png (Rust crate), inside jSquash | as bundled | PNG decoder and encoder | MIT or Apache-2.0 |
| oxipng, inside jSquash | as bundled | Lossless PNG optimization (compress image, favicons) | MIT |
ONNX Runtime Web (onnxruntime-web) |
1.31.1 | Running the background-removal model | MIT |
| U²-Net-p model weights | ONNX export, 4.6 MB | Finding the subject when removing a background | Apache-2.0 (full text) |
pdf.js (pdfjs-dist) |
6.4.299 | Opening and drawing PDF pages | Apache-2.0 |
| pdf-lib | 1.17.1 | Creating PDF files | MIT |
| docx | 9.15.0 | Writing Word files (PDF to Word) | MIT |
| qrcode-generator | 2.0.4 | QR code patterns | MIT |
| bwip-js, with Barcode Writer in Pure PostScript | 4.11.4 | Barcodes (EAN, UPC, Code 128 and others) | MIT |
| fflate | 0.8.3 | “Download all as ZIP” | MIT |
| React | 19.3.1 | Interactive parts of the pages | MIT |
| Astro | 7.4.2 | Page framework (small runtime) | MIT |
| Tailwind CSS | 4.3.3 | Styles | MIT |
| Heebo font | 5.3.0 (Fontsource) | Site font | SIL Open Font License 1.1 |
| Plus Jakarta Sans font | 5.3.0 (Fontsource) | Latin text | SIL Open Font License 1.1 |
| Lucide icons | (copied) | Interface icons | ISC |
This software is based in part on the work of the Independent JPEG Group.
The HEIC decoder (LGPL-3.0)
libheif-js, libheif and libde265 are licensed under the GNU Lesser General Public License, version 3. We use the WebAssembly build published by libheif-js version 1.23.5 without changes. It is loaded as its own file (named libheif-bundle-….js in your browser’s network tab), separate from Benchmo’s code, so it can be replaced with another build of the same library.
- Source code: libheif-js 1.23.5, which builds libheif and libde265 from their public repositories.
- License texts: LGPL-3.0 and GPL-3.0, libheif-js license.
If you would like a copy of the exact source we use, write to [email protected].
Used only to build the site
These run on our side when the site is built and are not sent to your browser: Satori and resvg-js (MPL-2.0) for share images, Vitest, Playwright and zxing-wasm (scanning our QR codes and barcodes back) for tests.
Sample files
The “try a sample file” photos are released under CC0 by their photographers (Rachel Michetti, Stéfan van der Walt), via the scikit-image sample data set.