# Third-Party Notices

TUICommander uses the following open-source libraries. We are grateful to the
authors and communities behind each project.

---

## Rust Dependencies

| Crate | Version | License |
|-------|---------|---------|
| aes-gcm | 0.10.3 | Apache-2.0 OR MIT |
| anyhow | 1.0.102 | MIT OR Apache-2.0 |
| async-stream | 0.3.6 | MIT |
| axum | 0.8.8 | MIT |
| axum-server | 0.7.3 | MIT |
| axum-server-dual-protocol | 0.7.0 | MIT OR Apache-2.0 |
| base64 | 0.22.1 | MIT OR Apache-2.0 |
| base64ct | 1.8.3 | Apache-2.0 OR MIT |
| bcrypt | 0.19.0 | MIT |
| bm25 | 2.3.2 | MIT |
| chrono | 0.4.44 | MIT OR Apache-2.0 |
| cpal | 0.17.1 | Apache-2.0 |
| dashmap | 6.1.0 | MIT |
| dirs | 6.0.0 | MIT OR Apache-2.0 |
| futures-util | 0.3.32 | MIT OR Apache-2.0 |
| genai | 0.6.0-beta.16 | MIT OR Apache-2.0 |
| gh-token | 0.1.8 | MIT OR Apache-2.0 |
| glob | 0.3.3 | MIT OR Apache-2.0 |
| grep-matcher | 0.1.8 | Unlicense OR MIT |
| grep-regex | 0.1.14 | Unlicense OR MIT |
| grep-searcher | 0.1.16 | Unlicense OR MIT |
| hkdf | 0.12.4 | MIT OR Apache-2.0 |
| ignore | 0.4.25 | Unlicense OR MIT |
| include_dir | 0.7.4 | MIT |
| keepawake | 0.6.0 | MIT |
| keyring | 3.6.3 | MIT OR Apache-2.0 |
| lazy_static | 1.5.0 | MIT OR Apache-2.0 |
| libc | 0.2.184 | MIT OR Apache-2.0 |
| mime_guess | 2.0.5 | MIT |
| notify | 8.2.0 | CC0-1.0 |
| oauth2 | 5.0.0 | MIT OR Apache-2.0 |
| parking_lot | 0.12.5 | MIT OR Apache-2.0 |
| portable-pty | 0.9.0 | MIT |
| rand | 0.10.0 | MIT OR Apache-2.0 |
| regex | 1.12.3 | MIT OR Apache-2.0 |
| reqwest | 0.13.2 | MIT OR Apache-2.0 |
| rodio | 0.20.1 | MIT OR Apache-2.0 |
| rustls | 0.23.37 | Apache-2.0 OR ISC OR MIT |
| serde | 1.0.228 | MIT OR Apache-2.0 |
| serde_json | 1.0.149 | MIT OR Apache-2.0 |
| sha2 | 0.10.9 | MIT OR Apache-2.0 |
| tauri | 2.10.3 | Apache-2.0 OR MIT |
| tauri-build | 2.5.6 | Apache-2.0 OR MIT |
| tauri-plugin-clipboard-manager | 2.3.2 | Apache-2.0 OR MIT |
| tauri-plugin-deep-link | 2.4.8 | Apache-2.0 OR MIT |
| tauri-plugin-dialog | 2.7.0 | Apache-2.0 OR MIT |
| tauri-plugin-global-shortcut | 2.3.1 | Apache-2.0 OR MIT |
| tauri-plugin-opener | 2.5.3 | Apache-2.0 OR MIT |
| tauri-plugin-process | 2.3.1 | Apache-2.0 OR MIT |
| tauri-plugin-single-instance | 2.4.1 | Apache-2.0 OR MIT |
| tauri-plugin-updater | 2.10.1 | Apache-2.0 OR MIT |
| tauri-plugin-window-state | 2.4.1 | Apache-2.0 OR MIT |
| tokio | 1.51.1 | MIT |
| tokio-tungstenite | 0.28.0 | MIT |
| tower-http | 0.6.8 | MIT |
| tracing | 0.1.44 | MIT |
| tracing-subscriber | 0.3.23 | MIT |
| url | 2.5.8 | MIT OR Apache-2.0 |
| uuid | 1.23.0 | Apache-2.0 OR MIT |
| vt100 | 0.16.2 | MIT |
| web-push-native | 0.4.0 | MIT OR Apache-2.0 |
| whisper-rs | 0.16.0 | Unlicense |
| zip | 8.5.1 | MIT |

### Rust Platform-Specific Dependencies

| Crate | Version | License | Platform |
|-------|---------|---------|----------|
| block2 | 0.6.2 | MIT | macOS |
| objc2 | 0.6.4 | MIT | macOS |
| objc2-app-kit | 0.3.2 | Zlib OR Apache-2.0 OR MIT | macOS |
| objc2-foundation | 0.3.2 | MIT | macOS |
| windows-sys | 0.61.2 | MIT OR Apache-2.0 | Windows |

### Rust Dev Dependencies

| Crate | Version | License |
|-------|---------|---------|
| mockito | 1.7.2 | MIT |
| serial_test | 3.4.0 | MIT |
| tempfile | 3.27.0 | MIT OR Apache-2.0 |
| tower | 0.5.3 | MIT |

---

## JavaScript / TypeScript Dependencies

| Package | Version | License |
|---------|---------|---------|
| @codemirror/commands | 6.10.2 | MIT |
| @codemirror/language | 6.12.2 | MIT |
| @codemirror/language-data | 6.5.2 | MIT |
| @codemirror/search | 6.6.0 | MIT |
| @codemirror/state | 6.5.4 | MIT |
| @codemirror/view | 6.39.16 | MIT |
| @git-diff-view/core | 0.1.3 | MIT |
| @git-diff-view/solid | 0.1.3 | MIT |
| @lezer/highlight | 1.2.3 | MIT |
| @tanstack/solid-virtual | 3.13.21 | MIT |
| @tauri-apps/api | 2.10.1 | Apache-2.0 OR MIT |
| @tauri-apps/plugin-deep-link | 2.4.7 | MIT OR Apache-2.0 |
| @tauri-apps/plugin-dialog | 2.7.0 | MIT OR Apache-2.0 |
| @tauri-apps/plugin-opener | 2.5.3 | MIT OR Apache-2.0 |
| @tauri-apps/plugin-process | 2.3.1 | MIT OR Apache-2.0 |
| @tauri-apps/plugin-updater | 2.10.0 | MIT OR Apache-2.0 |
| @tauri-apps/plugin-window-state | 2.4.1 | MIT OR Apache-2.0 |
| @xterm/addon-fit | 0.11.0 | MIT |
| @xterm/addon-search | 0.16.0 | MIT |
| @xterm/addon-unicode11 | 0.9.0 | MIT |
| @xterm/addon-web-links | 0.12.0 | MIT |
| @xterm/addon-webgl | 0.19.0 | MIT |
| @xterm/xterm | 6.0.0 | MIT |
| dompurify | 3.3.2 | MPL-2.0 OR Apache-2.0 |
| marked | 17.0.4 | MIT |
| qrcode | 1.5.4 | MIT |
| rollup | 4.59.0 | MIT |
| solid-codemirror | 2.3.1 | MIT |
| solid-js | 1.9.11 | MIT |
| vite-plugin-solid | 2.11.10 | MIT |

### JavaScript Dev Dependencies

| Package | Version | License |
|---------|---------|---------|
| @solidjs/testing-library | 0.8.10 | MIT |
| @tauri-apps/cli | 2.10.0 | Apache-2.0 OR MIT |
| @testing-library/jest-dom | 6.9.1 | MIT |
| @types/qrcode | 1.5.6 | MIT |
| @vitest/coverage-v8 | 4.0.18 | MIT |
| happy-dom | 20.8.9 | MIT |
| lightningcss | 1.31.1 | MPL-2.0 |
| rollup-plugin-visualizer | 7.0.1 | MIT |
| typescript | 5.9.3 | Apache-2.0 |
| vite | 7.3.2 | MIT |
| vite-plugin-checker | 0.12.0 | MIT |
| vite-plugin-purgecss | 0.2.13 | MIT |
| vitest | 4.0.18 | MIT |

---

## License Summary

Counts below collapse equivalent SPDX expressions (`MIT OR Apache-2.0` ≡ `Apache-2.0 OR MIT`).

| License | Count |
|---------|-------|
| MIT | 55 |
| MIT OR Apache-2.0 | 48 |
| Apache-2.0 | 2 |
| Unlicense OR MIT | 4 |
| Unlicense | 3 |
| Apache-2.0 OR ISC OR MIT | 1 |
| Zlib OR Apache-2.0 OR MIT | 1 |
| MPL-2.0 | 1 |
| MPL-2.0 OR Apache-2.0 | 1 |
| CC0-1.0 | 1 |

All dependencies use OSI-approved or public-domain-equivalent licenses compatible
with commercial and open-source distribution.
