RaptorQR Static Web Build
This directory is a self-contained static build of the RaptorQR web app. It
does not require a Node.js server. Serve the directory with any static HTTP
server; do not open index.html directly from the filesystem.
Python
From this directory:
python -m http.server 8080
From the repository root:
python -m http.server 8080 --directory apps/web/dist
Open http://localhost:8080 on the same computer.
miniserve
Put svenstaro/miniserve in this directory, then
serve the build from the repository root (or just double-click the miniserve binary in this directory):
miniserve --spa --index index.html -i 0.0.0.0 -p 8080 apps/web/dist
Camera Access Requires HTTPS
Browsers expose camera APIs only in a secure context. http://localhost is
normally allowed on the same device, but a phone opening
http://<computer-lan-ip>:8080 is not. The receiving device must use an HTTPS
URL with a certificate it trusts.
With a trusted certificate and private key, miniserve can serve HTTPS:
miniserve --spa --index index.html -i 0.0.0.0 -p 8443 \
--tls-cert cert.pem --tls-key key.pem apps/web/dist
Then open https://<computer-hostname-or-ip>:8443 on the scanning device. The
certificate must cover that hostname or IP and its issuing CA must be trusted
by the device. A trusted HTTPS static host or HTTPS tunnel is often easier than
configuring a LAN certificate.