Documento do projeto

Software e assets de terceiros

O pix2qr serve localmente os componentes abaixo. Os textos integrais de licença ficam em licenses/ e também entram no artefato público dist/.

jsQR

Apache-2.0
Versão / origem fixada
npm jsqr@1.4.0, gitHead 49a9633, integridade npm registrada no lock
Uso
Decodificar QR de imagem

node-qrcode

MIT
Versão / origem fixada
npm qrcode@1.5.4, commit 3848ed2, integridade npm registrada no lock
Uso
Renderizar QR

dijkstrajs

MIT
Versão / origem fixada
npm dijkstrajs@1.0.3, commit 49ad1ec
Uso
Transitivo incluído no bundle browser do node-qrcode
Arquivo
dentro de qrcode.min.js

Umami tracker

MIT
Versão / origem fixada
snapshot do script cloud em 2026-07-06
Uso
Telemetria técnica
Arquivo
umami.js

O qrcode.min.js usa o caminho browser do node-qrcode; dependências de CLI e renderização PNG no Node (yargs e pngjs) não fazem parte desse bundle. O transitivo executado no browser é o dijkstrajs, inventariado acima.

O que o gate comprova

O arquivo de repositório third-party.lock.json registra o SHA-256 de cada asset e licença distribuídos. O gate scripts/check-vendored.mjs, também mantido no repositório, confere os bytes a cada CI. Isso detecta qualquer alteração local silenciosa sem publicar tooling interno no site.

Hash local não é, sozinho, prova de procedência ou reprodutibilidade. Os bundles minificados atuais de jsQR/node-qrcode ainda precisam de uma receita de rebuild determinística que reproduza exatamente os bytes, e o snapshot cloud do Umami não fornece um commit de build verificável. Até essa receita existir, uma atualização deve partir do pacote/commit fixado, revisar o diff, preservar os textos de licença e atualizar conscientemente o lock.

Todo o código original do pix2qr permanece sob a licença MIT.