# Third-party software and source notice

This deployment includes or adapts the following third-party software. The corresponding license files are distributed alongside the application.

## Zippland/perler-beads

- Source: https://github.com/Zippland/perler-beads
- Local adapted source: `js/processor-zippland.worker.js`
- License: GNU Affero General Public License v3.0
- License text: `LICENSE-AGPL-3.0-Zippland.txt`
- Modifications: adapted to the Lepix Web Worker message protocol, current brand palettes, board centering, background removal, and diagnostics.

The adapted source is delivered directly to every browser as JavaScript. A downloadable copy is available at `/js/processor-zippland.worker.js` on the deployed site.

## Jett-Wu/Perler_Beads_Generator

- Source: https://github.com/Jett-Wu/Perler_Beads_Generator
- Local adapted source: `js/reference-upstream/src/`
- Browser build: `js/reference-upstream/dist/reference.worker.js`
- License: MIT
- License text: `LICENSE-MIT-Jett-Wu.txt`

## three.js

- Source: https://github.com/mrdoob/three.js
- Bundled version: r134
- Runtime file: `vendor/three.r134.min.js`
- License: MIT
- License text: `vendor/LICENSE-three.txt`

## ONNX Runtime Web

- Source: https://github.com/microsoft/onnxruntime
- Bundled version: 1.27.0
- Runtime files: `vendor/ort.min.js`, `vendor/ort-wasm-simd-threaded.mjs`, `vendor/ort-wasm-simd-threaded.wasm`
- License: MIT, with bundled third-party components under their stated licenses
- License: `vendor/LICENSE-onnxruntime.txt`
- Third-party notices: `vendor/ThirdPartyNotices-onnxruntime.txt`

## Tesseract.js and Tesseract OCR

- Source: https://github.com/naptha/tesseract.js and https://github.com/tesseract-ocr/tesseract
- Bundled runtime: `vendor/ocr/`
- Language data: English `eng.traineddata.gz`, used locally for alphanumeric legend codes
- License: Apache License 2.0
- License files: `vendor/ocr/tesseract.min.js.LICENSE.txt`, `vendor/ocr/worker.min.js.LICENSE.txt`, `vendor/ocr/LICENSE-tesseract-core.txt`

## ocr-web and PaddleOCR PP-OCRv5 models

- Integration source: https://github.com/bent2685/ocr-web
- Upstream OCR models: https://github.com/PaddlePaddle/PaddleOCR
- Bundled adapter: `vendor/ocr/ppocr-legend.bundle.js`
- Runtime models: `models/ocr/ppocrv5_det.onnx`, `models/ocr/ppocrv5_rec.onnx`, `models/ocr/ppocrv5_dict.txt`
- Usage: opt-in local legend OCR experiment; the default local engine remains Tesseract.js
- Code license: MIT
- Model license: Apache License 2.0
- License note: `models/ocr/LICENSE-PaddleOCR.txt`

## MobileSAM

- Source: https://github.com/ChaoningZhang/MobileSAM
- ONNX distribution recorded in `models/model-manifest.json`
- Runtime models: `models/mobile_sam_encoder.quant.onnx`, `models/mobile_sam_decoder.onnx`
- License: MIT
- License text: `models/LICENSE-MobileSAM.txt`

No warranty is provided by the third-party authors. Refer to each license for the exact terms.