Legal
Open-source licenses
Effective October 1, 2026
LUX is built on open-source software. This page lists what we ship and the licence each piece is under. The mirror shows the same list under About › Licenses, and both apps under Settings › About › Open-source licenses.
01
This website
The packages theluxmirror.com is built on directly, generated from this site’s own package list at build time.
| Package | Version | Licence |
|---|---|---|
| @base-ui/react | 1.5.0 | MIT |
| class-variance-authority | 0.7.1 | Apache-2.0 |
| clsx | 2.1.1 | MIT |
| lucide-react | 1.16.0 | ISC |
| next | 16.3.5 | MIT |
| react | 19.2.4 | MIT |
| react-dom | 19.2.4 | MIT |
| server-only | 0.0.1 | MIT |
| shadcn | 4.8.0 | MIT |
| tailwind-merge | 3.6.0 | MIT |
| tw-animate-css | 1.4.0 | MIT |
Every package in the production build (412), by licence
MIT · 334
- @babel/code-frame 7.29.7
- @babel/compat-data 7.29.7
- @babel/core 7.29.7
- @babel/generator 7.29.7
- @babel/helper-annotate-as-pure 7.29.7
- @babel/helper-compilation-targets 7.29.7
- @babel/helper-create-class-features-plugin 7.29.7
- @babel/helper-globals 7.29.7
- @babel/helper-member-expression-to-functions 7.29.7
- @babel/helper-module-imports 7.29.7
- @babel/helper-module-transforms 7.29.7
- @babel/helper-optimise-call-expression 7.29.7
- @babel/helper-plugin-utils 7.29.7
- @babel/helper-replace-supers 7.29.7
- @babel/helper-skip-transparent-expression-wrappers 7.29.7
- @babel/helper-string-parser 7.29.7
- @babel/helper-validator-identifier 7.29.7
- @babel/helper-validator-option 7.29.7
- @babel/helpers 7.29.7
- @babel/parser 7.29.7
- @babel/plugin-syntax-jsx 7.29.7
- @babel/plugin-syntax-typescript 7.29.7
- @babel/plugin-transform-modules-commonjs 7.29.7
- @babel/plugin-transform-typescript 7.29.7
- @babel/preset-typescript 7.29.7
- @babel/runtime 7.29.7
- @babel/template 7.29.7
- @babel/traverse 7.29.7
- @babel/types 7.29.7
- @base-ui/react 1.5.0
- @base-ui/utils 0.2.9
- @ecies/ciphers 0.2.6
- @emnapi/runtime 1.11.3
- @floating-ui/core 1.7.5
- @floating-ui/dom 1.7.6
- @floating-ui/react-dom 2.1.8
- @floating-ui/utils 0.2.11
- @hono/node-server 1.19.17
- @img/colour 1.1.0
- @inquirer/ansi 2.0.6
- @inquirer/confirm 6.1.0
- @inquirer/core 11.2.0
- @inquirer/figures 2.0.6
- @inquirer/type 4.0.6
- @jridgewell/gen-mapping 0.3.13
- @jridgewell/remapping 2.3.5
- @jridgewell/resolve-uri 3.1.2
- @jridgewell/sourcemap-codec 1.5.5
- @jridgewell/trace-mapping 0.3.31
- @modelcontextprotocol/sdk 1.29.0
- @mswjs/interceptors 0.41.9
- @next/env 16.3.5
- @next/swc-darwin-arm64 16.3.5
- @next/swc-darwin-x64 16.3.5
- @next/swc-linux-arm64-gnu 16.3.5
- @next/swc-linux-arm64-musl 16.3.5
- @next/swc-linux-x64-gnu 16.3.5
- @next/swc-linux-x64-musl 16.3.5
- @next/swc-win32-arm64-msvc 16.3.5
- @next/swc-win32-x64-msvc 16.3.5
- @noble/ciphers 1.3.0
- @noble/curves 1.9.7
- @noble/hashes 1.8.0
- @nodelib/fs.scandir 2.1.5
- @nodelib/fs.stat 2.0.5
- @nodelib/fs.walk 1.2.8
- @open-draft/deferred-promise 2.2.0
- @open-draft/deferred-promise 3.0.0
- @open-draft/logger 0.3.0
- @open-draft/until 2.1.0
- @sec-ant/readable-stream 0.4.1
- @sindresorhus/merge-streams 4.0.0
- @ts-morph/common 0.27.0
- @types/node 20.19.41
- @types/react 19.2.15
- @types/set-cookie-parser 2.4.10
- @types/statuses 2.0.6
- @types/validate-npm-package-name 4.0.2
- accepts 2.0.0
- agent-base 7.1.4
- ajv 8.20.0
- ajv-formats 3.0.1
- ansi-colors 4.1.3
- ansi-regex 5.0.1
- ansi-regex 6.2.2
- ansi-styles 4.3.0
- ast-types 0.16.1
- balanced-match 4.0.4
- body-parser 2.3.0
- brace-expansion 5.0.9
- braces 3.0.3
- browserslist 4.28.9
- bundle-name 4.1.0
- bytes 3.1.2
- call-bind-apply-helpers 1.0.2
- call-bound 1.0.4
- callsites 3.1.0
- chalk 5.6.2
- cli-cursor 5.0.0
- cli-spinners 2.9.2
- client-only 0.0.1
- clsx 2.1.1
- code-block-writer 13.0.3
- color-convert 2.0.1
- color-name 1.1.4
- commander 11.1.0
- commander 14.0.3
- content-disposition 1.1.0
- content-type 1.0.5
- content-type 2.0.0
- content-type 2.1.0
- convert-source-map 2.0.0
- cookie 0.7.2
- cookie 1.1.1
- cookie-signature 1.2.2
- cors 2.8.6
- cosmiconfig 9.0.1
- cross-spawn 7.0.6
- cssesc 3.0.0
- csstype 3.2.3
- data-uri-to-buffer 4.0.1
- debug 4.4.3
- dedent 1.7.2
- deepmerge 4.3.1
- default-browser 5.5.0
- default-browser-id 5.0.1
- define-lazy-prop 3.0.0
- depd 2.0.0
- dunder-proto 1.0.1
- eciesjs 0.4.18
- ee-first 1.1.1
- emoji-regex 10.6.0
- emoji-regex 8.0.0
- encodeurl 2.0.0
- enquirer 2.4.1
- env-paths 2.2.1
- error-ex 1.3.4
- es-define-property 1.0.1
- es-errors 1.3.0
- es-object-atoms 1.1.2
- escalade 3.2.0
- escape-html 1.0.3
- etag 1.8.1
- eventsource 3.0.7
- eventsource-parser 3.0.8
- execa 5.1.1
- execa 9.6.1
- express 5.2.1
- express-rate-limit 8.5.2
- fast-deep-equal 3.1.3
- fast-glob 3.3.3
- fast-string-truncated-width 3.0.3
- fast-string-width 3.0.2
- fast-wrap-ansi 0.2.2
- fdir 6.5.0
- fetch-blob 3.2.0
- figures 6.1.0
- fill-range 7.1.1
- finalhandler 2.1.1
- formdata-polyfill 4.0.10
- forwarded 0.2.0
- fresh 2.0.0
- fs-extra 11.3.5
- function-bind 1.1.2
- fuzzysort 3.1.0
- gensync 1.0.0-beta.2
- get-east-asian-width 1.6.0
- get-intrinsic 1.3.0
- get-own-enumerable-keys 1.0.0
- get-proto 1.0.1
- get-stream 6.0.1
- get-stream 9.0.1
- gopd 1.2.0
- graphql 16.14.0
- has-symbols 1.1.0
- hasown 2.0.3
- headers-polyfill 5.0.1
- hono 4.13.7
- http-errors 2.0.1
- https-proxy-agent 7.0.6
- iconv-lite 0.7.2
- ignore 5.3.2
- import-fresh 3.3.1
- ip-address 10.7.0
- ipaddr.js 1.9.1
- is-arrayish 0.2.1
- is-docker 3.0.0
- is-extglob 2.1.1
- is-fullwidth-code-point 3.0.0
- is-glob 4.0.3
- is-in-ssh 1.0.0
- is-inside-container 1.0.0
- is-interactive 2.0.0
- is-node-process 1.2.0
- is-number 7.0.0
- is-obj 3.0.0
- is-plain-obj 4.1.0
- is-promise 4.0.0
- is-regexp 3.1.0
- is-stream 2.0.1
- is-stream 4.0.1
- is-unicode-supported 1.3.0
- is-unicode-supported 2.1.0
- is-wsl 3.1.1
- jose 6.2.3
- js-tokens 4.0.0
- js-yaml 4.3.2
- jsesc 3.1.0
- json-parse-even-better-errors 2.3.1
- json-schema-traverse 1.0.0
- json5 2.2.3
- jsonfile 6.2.1
- kleur 3.0.3
- kleur 4.1.5
- lines-and-columns 1.2.4
- log-symbols 6.0.0
- math-intrinsics 1.1.0
- media-typer 1.1.0
- merge-descriptors 2.0.0
- merge-stream 2.0.0
- merge2 1.4.1
- micromatch 4.0.8
- mime-db 1.54.0
- mime-types 3.0.2
- mimic-fn 2.1.0
- mimic-function 5.0.1
- minimist 1.2.8
- ms 2.1.3
- msw 2.14.6
- nanoid 3.3.19
- negotiator 1.0.0
- next 16.3.5
- node-domexception 1.0.0
- node-fetch 3.3.2
- node-releases 2.0.55
- npm-run-path 4.0.1
- npm-run-path 6.0.0
- object-assign 4.1.1
- object-inspect 1.13.4
- object-treeify 1.1.33
- on-finished 2.4.1
- onetime 5.1.2
- onetime 7.0.0
- open 11.0.0
- ora 8.2.0
- outvariant 1.4.3
- parent-module 1.0.1
- parse-json 5.2.0
- parse-ms 4.0.0
- parseurl 1.3.3
- path-browserify 1.0.1
- path-key 3.1.1
- path-key 4.0.0
- path-to-regexp 6.3.0
- path-to-regexp 8.4.2
- picomatch 2.3.2
- picomatch 4.0.4
- pkce-challenge 5.0.1
- postcss 8.5.23
- postcss 8.5.28
- postcss-selector-parser 7.1.6
- powershell-utils 0.1.0
- pretty-ms 9.3.0
- prompts 2.4.2
- proxy-addr 2.0.7
- queue-microtask 1.2.3
- range-parser 1.2.1
- raw-body 3.0.2
- react 19.2.4
- react-dom 19.2.4
- recast 0.23.11
- require-directory 2.1.1
- require-from-string 2.0.2
- reselect 5.2.0
- resolve-from 4.0.0
- restore-cursor 5.1.0
- rettime 0.11.11
- reusify 1.1.0
- router 2.2.0
- run-applescript 7.1.0
- run-parallel 1.2.0
- safer-buffer 2.1.2
- scheduler 0.27.0
- send 1.2.1
- serve-static 2.2.1
- server-only 0.0.1
- set-cookie-parser 3.1.0
- shadcn 4.8.0
- shebang-command 2.0.0
- shebang-regex 3.0.0
- side-channel 1.1.1
- side-channel-list 1.0.1
- side-channel-map 1.0.1
- side-channel-weakmap 1.0.2
- sisteransi 1.0.5
- statuses 2.0.2
- stdin-discarder 0.2.2
- strict-event-emitter 0.5.1
- string-width 4.2.3
- string-width 7.2.0
- strip-ansi 6.0.1
- strip-ansi 7.2.0
- strip-bom 3.0.0
- strip-final-newline 2.0.0
- strip-final-newline 4.0.0
- styled-jsx 5.1.6
- tagged-tag 1.0.0
- tailwind-merge 3.6.0
- tiny-invariant 1.3.3
- tldts 7.4.0
- tldts-core 7.4.0
- to-regex-range 5.0.1
- toidentifier 1.0.1
- ts-morph 26.0.0
- tsconfig-paths 4.2.0
- tw-animate-css 1.4.0
- type-is 2.1.0
- undici-types 6.21.0
- unicorn-magic 0.3.0
- universalify 2.0.1
- unpipe 1.0.0
- until-async 3.0.2
- update-browserslist-db 1.3.3
- use-sync-external-store 1.6.0
- util-deprecate 1.0.2
- vary 1.1.2
- web-streams-polyfill 3.3.3
- wrap-ansi 7.0.0
- wsl-utils 0.3.1
- yargs 17.7.2
- yocto-spinner 1.2.0
- yoctocolors 2.1.2
- zod 3.25.76
- zod 4.4.3
ISC · 27
- cli-width 4.1.0
- cliui 8.0.1
- electron-to-chromium 1.5.427
- fastq 1.20.1
- get-caller-file 2.0.5
- glob-parent 5.1.2
- graceful-fs 4.2.11
- inherits 2.0.4
- isexe 2.0.0
- lru-cache 5.1.1
- lucide-react 1.16.0
- mute-stream 4.0.0
- once 1.4.0
- picocolors 1.1.1
- semver 6.3.1
- semver 7.8.5
- setprototypeof 1.2.0
- signal-exit 3.0.7
- signal-exit 4.1.0
- validate-npm-package-name 7.0.2
- which 2.0.2
- which 4.0.0
- wrappy 1.0.2
- y18n 5.0.8
- yallist 3.1.1
- yargs-parser 21.1.1
- zod-to-json-schema 3.25.2
Apache-2.0 · 20
- @img/sharp-darwin-arm64 0.35.4
- @img/sharp-darwin-x64 0.35.4
- @img/sharp-freebsd-wasm32 0.35.4
- @img/sharp-linux-arm 0.35.4
- @img/sharp-linux-arm64 0.35.4
- @img/sharp-linux-ppc64 0.35.4
- @img/sharp-linux-riscv64 0.35.4
- @img/sharp-linux-s390x 0.35.4
- @img/sharp-linux-x64 0.35.4
- @img/sharp-linuxmusl-arm64 0.35.4
- @img/sharp-linuxmusl-x64 0.35.4
- @img/sharp-webcontainers-wasm32 0.35.4
- @swc/helpers 0.5.23
- baseline-browser-mapping 2.11.22
- class-variance-authority 0.7.1
- detect-libc 2.1.2
- human-signals 2.1.0
- human-signals 8.0.1
- sharp 0.35.4
- typescript 5.9.3
LGPL-3.0-or-later · 10
- @img/sharp-libvips-darwin-arm64 1.3.3
- @img/sharp-libvips-darwin-x64 1.3.3
- @img/sharp-libvips-linux-arm 1.3.3
- @img/sharp-libvips-linux-arm64 1.3.3
- @img/sharp-libvips-linux-ppc64 1.3.3
- @img/sharp-libvips-linux-riscv64 1.3.3
- @img/sharp-libvips-linux-s390x 1.3.3
- @img/sharp-libvips-linux-x64 1.3.3
- @img/sharp-libvips-linuxmusl-arm64 1.3.3
- @img/sharp-libvips-linuxmusl-x64 1.3.3
BSD-3-Clause · 7
- @dotenvx/dotenvx 1.69.1
- diff 8.0.4
- fast-uri 3.1.7
- qs 6.16.0
- source-map 0.6.1
- source-map-js 1.2.1
- tough-cookie 6.0.1
BSD-2-Clause · 4
- dotenv 17.4.2
- esprima 4.0.1
- json-schema-typed 8.0.2
- stringify-object 5.0.0
Apache-2.0 AND LGPL-3.0-or-later · 3
- @img/sharp-win32-arm64 0.35.4
- @img/sharp-win32-ia32 0.35.4
- @img/sharp-win32-x64 0.35.4
(MIT OR CC0-1.0) · 1
- type-fest 5.6.0
0BSD · 1
- tslib 2.8.1
Apache-2.0 AND LGPL-3.0-or-later AND MIT · 1
- @img/sharp-wasm32 0.35.4
CC-BY-4.0 · 1
- caniuse-lite 1.0.30001810
Python-2.0 · 1
- argparse 2.0.1
02
On the mirror
The LUX Smart Mirror runs this open-source software. Where a licence entitles you to the source code, our source code offer says how to get it.
| Component | Licence |
|---|---|
| Raspberry Pi OS | GPL-2.0 and others |
| libcamera | LGPL-2.1-or-later |
| zbar | LGPL-2.1 |
| libqrencode | LGPL-2.1-or-later |
| sdbus-c++ | LGPL-2.1-or-later with linking exception |
| glibc | LGPL-2.1 |
| libstdc++ / libgcc | GPL-3.0 with GCC Runtime Library Exception |
| OpenCV YuNet face detector | MIT |
| Face, hand and pose landmark models (MediaPipe-derived, via PINTO_model_zoo) | Apache-2.0 (confirm per model before launch) |
| Bodoni Moda, Geist and Geist Mono fonts | SIL Open Font License 1.1 |
03
Fonts
Bodoni Moda, Geist and Geist Mono are used on this site, in both apps and on the mirror under the SIL Open Font License, Version 1.1.
- Bodoni Moda — Copyright 2020 The Bodoni Moda Project Authors (https://github.com/indestructible-type/Bodoni).
- Geist and Geist Mono — Copyright 2024 The Geist Project Authors (https://github.com/vercel/geist-font.git).
The fonts are provided “as is”, without warranty of any kind, as the licence states in full.
04
Apache NOTICE
The mirror’s face, hand and pose landmark models are derived from Google MediaPipe models (Copyright The MediaPipe Authors), converted for on-device use through the PINTO_model_zoo project, and are licensed under the Apache License, Version 2.0. You may obtain a copy of the licence at apache.org/licenses/LICENSE-2.0.
Unless required by applicable law or agreed to in writing, software distributed under the licence is distributed on an “as is” basis, without warranties or conditions of any kind, either express or implied. See the licence for the specific language governing permissions and limitations under it.