- 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)
56 lines
No EOL
1.3 KiB
TOML
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 |