Values are encrypted (DOTENV_PUBLIC_KEY* is the only plaintext); the private keys stay in .env.keys, which is gitignored. Run the app with 'dotenvx run -f .env -- node tools/server.js' locally.
- tools/: express host (hardcoded config, YOUreka Auth cookie session, OpenFGA domain filtering with 5-min cache, a2loft proxies) - /fingerprint wizard: domain picker, two-finger capture via fpagent Socket.IO, OTP-validated lookup/save, domain refresh control - node --test suite (27 tests, fake portal/PocketBase/a2loft upstreams) - Dockerfile (node:22-alpine, non-root, healthcheck) - README rewritten; node_modules gitignored Field-verified end to end: portal login, permitted-domain filtering, real U.are.U 4500 captures, cancel-preserves-capture, a2loft save.
* Make Biometrics service configurable to domain * Use native threading with flask (remove 'eventlet') * Other minor UI adjustment.