Infrastructure (P0): deployed nostr-rs-relay (wss://nrelay.us-ea.st) and the goblin-nip05d NIP-05 service (goblin.st) on us-ea.st with TLS + DNS. Brand & theme (P1): Goblin name/icon/data-dir (.goblin); three-theme token system (light/dark/yellow) in gui/theme.rs with colors.rs remapped as a shim; Geist + Geist Mono fonts; AppConfig theme/density/last_wallet_id. Nostr subsystem (P2-P3): src/nostr/ with NIP-06 identity (seed-derived, NIP-49 encrypted), per-wallet rkv archive, guarded ingest policy (never auto-pays Invoice1; binds replies to the stored counterparty npub), NIP-17 send/receive pipeline, NIP-05 client. Relay traffic routed over the embedded arti Tor client via a custom WebSocketTransport. Wired into Wallet lifecycle and the task handler. 26 unit tests pass. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Grim

Cross-platform GUI for GRiN ツ in Rust for maximum compatibility with original Mimblewimble implementation. Initially supported platforms are Linux, Mac, Windows, limited Android and possible web support with help of egui - immediate mode GUI library in pure Rust.
Named by the character Grim - the shape of a large, black, menacing, spectral giant dog.
Build instructions
Install Rust
Follow instructions on Windows.
curl https://sh.rustup.rs -sSf | sh
Desktop
To build and run application go to project directory and run:
git submodule update --init --recursive
cargo build --release
./target/release/grim
Android
Set up the environment
Install Android SDK / NDK / Platform Tools for your OS according to this FAQ.
Build the project
Run Android emulator or connect a real device. Command adb devices should show at least one device.
In the root of the repo run ./scripts/android.sh build|release v7|v8|x86, where is v7, v8, x86 - device CPU architecture for build type, for release specify version number in format major.minor.patch.
License
Apache License v2.0.
