niko_trust_gui/Cargo.toml
Niko Marmeladkov 6278321873
niko_trust_gui: TCE protocol client with iced GUI
- Byte-exact TCE codec (encoder/decoder, canonical numbers, vectors-tested)
- Ed25519 identities with bech32m trust1… addresses
- Relay client: challenge/auth handshake, request feed, responses,
  transparent re-auth on 401
- iced GUI (Material-dark, Solana-style palette): tab shell, approval
  prompts with native toasts on Linux, address book, history, settings,
  password change
- Portable single-file vault (identity + book + history + settings)
- Live 2FA roundtrip examples (send_2fa, await_2fa)
2026-08-22 23:20:41 +03:00

56 lines
No EOL
1.3 KiB
TOML

[package]
name = "niko_trust_gui"
version = "0.1.0"
edition = "2021"
description = "Niko Trust GUI client (trust.n1ko.dev)"
license = "MIT"
[features]
default = ["gui"]
# "gui" builds the iced desktop app. Disable (--no-default-features) for a fast
# core-only build that skips the heavy GUI dependency tree.
gui = ["dep:iced"]
[dependencies]
# crypto
sha2 = "0.11"
ed25519-dalek = { version = "3.0", default-features = true }
curve25519-dalek = "5.0"
chacha20poly1305 = "0.11"
aead = "0.6"
argon2 = "0.5"
subtle = "2"
zeroize = { version = "1", features = ["zeroize_derive"] }
getrandom = "0.4"
# codecs / io
bech32 = "0.12"
hex = "0.4"
base64 = "0.23"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
dirs = "6"
ureq = { version = "3.4", default-features = true, features = ["json"] }
# GUI (cross-platform)
# "tokio" gives iced::time::every (the default thread-pool backend has an empty
# time module), so the poll loop has a real timer.
iced = { version = "0.14", optional = true, features = ["tokio"] }
# autostart (cross-platform: XDG autostart / Windows registry)
auto-launch = "0.6"
[target.'cfg(target_os = "linux")'.dependencies]
notify-rust = "4.18"
[target.'cfg(target_os = "windows")'.dependencies]
winrt-notification = "0.5"
windows = "0.62"
[dev-dependencies]
# nothing yet
[profile.release]
lto = "thin"
strip = true
codegen-units = 1