Grim - cross-platform GUI for Grin

Good Morning, have a Grin day ツ

I am happy to announce result of my near half-year contribution - public release of Grim - cross-platform GUI for Grin ツ in pure Rust. It was named by the character Grim - the shape of a large, black, menacing, spectral giant dog.

Initially supported platforms are Android, Linux, Windows, and MacOS (iOS is coming) with help of egui - immediate mode GUI library.

It will be FAQ how to use it, key features are:

  • SeedQR format support to safely store seed-phrase.
  • Uniform Resources to transfer data with camera by scanning animated QR codes to share Slatepack Messages and future hardware/offline wallet functionality.
  • Multiple connections, wallets and accounts.

Plans:

  • iOS
  • Offline wallet functionality
  • Mwixnet integration
  • Plugins/SDKs for integration
  • dApps :wink:

Download:

Contribute:

Support:

23 Likes

Long awaited public release of Grim wallet. Congrats everyone! And thank you @ardocrat for such an awesome contribution!

Grin is dead :grin:

9 Likes

Thank you so much for your amazing work!

5 Likes

Reminder to star the repo. Stars actually do help visibility

5 Likes

If you run a node from your desktop app, is it recommended to use TOR at the same time? I didn’t yet because I wasn’t sure of the privacy implications of these various options.

There are no Tor peers for node yet, can be added in the future like at Bitcoin.
For wallet there is integrated Tor client with arti lib The Tor Project / Core / Arti · GitLab
No integrated bridge support, need to specify path to obfs4 binary if Tor is blocked at your country.

2 Likes

Have you integrated this yet or no? I didn’t see anything in the UI about Tor being on or turning it on/off.

Transport tab at wallet

2 Likes

Congrats, long live $GRIN :kissing_heart:

1 Like

How does the sub-addresses work with this wallet? You can create multiple addresses, but it’s part of the same wallet.

So I’m wondering what the typical use case is for creating the multiple addresses. Why and when someone might want to do that

1 Like

It is using default grin-wallet crate, which supports BIP32 derivation path, so you can import your accounts from CLI wallet without problems with Grim.

Multiple Tor addresses for single account is also possible to implement in the future for better privacy, for now its simple as possible.

1 Like

Mining Testnet with G1 Mini now, cause nobody is doing this :stuck_out_tongue:

3 Likes

No, I mean this “multiple person” icon
image

You can then click “create”
image

image

What does this do exactly? It looks like sub-addresses like Monero has. What is m/0/0 and m/1/0? What are these doing and why might someone want to use this functionality?

1 Like

It’s calling derivation path.

1 Like

What do you use it for exactly? Why is it useful?

Derivation paths are used to deterministically create multiple wallet keypairs from one unique seed. You can refer to this BIP for more information on how it works.

2 Likes

Okay, but why would someone want to do it? What is the use case? What does it protect against?

Mostly so you don’t need to manage multiple recovery phrases.

1 Like

If there’s no on-chain addresses, why would you need multiple of these? It’s not like Monero where you give someone a static address, right?

What if you were running a store that accepted GRIN, but preferred to separate your business and personal GRIN transaction histories for ease of bookkeeping?

2 Likes