How can we make Grin++ better?

Hi! I’m opening this forum thread to hear more about what do you think will make Grin++ a better wallet. Since I have bunch of stuff to do for the Android version, I would like to focus on receiving feedback, feature request and comments, for the Desktop version, Windows, Linux a macOS.

I have some ideas, but I would like to read yours; no idea is bad, feel free of commenting this thread.



suport for testnet,remote node

1 Like

I assume the testnet implementation on Grin++ would be good. Also, finding ways to shortening slatepack massage to transfer it through QR code can be good. A question mark close to the status circle to give information about each 4 phase wallet needs to complete to become running is also educational and can be considered “Devs pay attention to their users to know more about what are they using” IMO.
In total, giving more information about mysterious parts of the wallet like GrinChck is needed.
Bringing BIP39 password to Grin++ is also a nice job to prevent wrench attack in the future maybe (I know there are other ways, like using different 24th word but BIP39 is kinda cool :D)
Supporting BIP39 different language words is a non-standard move but also unique to do.


I would love if there was the price or a chart of the price of Grin in a new tab (e.g next to coinbase tab ==> price tab with information about price, marketcap and 24h trading volume) with some extra artwork. Besides the utility I think it would make the wallet even more beautiful :grinning: :wink: :star_struck:

1 Like

Below some suggestions and enhancements i’ve been thinking about

Mobile App :
By running grin ++, the user is also running a separate node as an android service.
wallet depends on the node, not the other way around. if the user stops the node, the wallet app should be shutdown. there is no reason to keep the app UP if the node is not running.

after a fresh install, the app needs to start by downloading the node. user should be prompted to connect over wifi for this crucial step, otherwise he can continue using his data connection.

Desktop app :
Encourage users to run a public node and include service like grinchk to actually check if the node is reachable (can do this in node screen). support the network should also be grin ++ mission.


Channel to send error reports directly

1 Like

Integration with an exchagne, could be interesting :thinking: Although also complex since if you for example would buy by trading Bitcoin and Grin, the Grin comes from your wallet while the Bitcoin is on the exchagne wallet, which might be confusing to users.

1 Like

Here in the U.S. iPhones dominant the mobile phone market and I hope to see Grin++ on iOS in the future


We will patiently w8 till u realize thats Androids is better, but if seroiusly - yes need to be done

Here’s part of my list (without repeating since some were mentioned above):

Address book. As a user, I would like to have an address book or contact list with name + address. I could then list, edit, delete, and send grins using this contacts list. It could also.

Check availability before sending. If the transaction will for sure fail using TOR (either mine or the destination’s address isn’t reachable), I would like to go directly to the fallback: Display the Slatepack Message to initialize the transaction.

How much I have in USD/EUR. Taking into consideration the current price, I would like to see how much my current balance represent in a fiat currently. I personally don’t like this much for many reasons, but I think this might be useful for some users.

Dynamic suggestions. As a user, I would like to read suggestion directly from the app on how to fix X or Y problem, when it happens.

Beta testing. As a user, I would like to get notified when a new Beta release is available. We use Beta release to test every fix before releasing it. Some users could benefit from these Beta releases.

Backup/Restore my wallet using a file. As a user, I would like to restore my wallet using an encrypted file. I know, the seed phrase has become like the standard, but I still found annoying the current process.

Definitely we need Testnet support. Remote nodes? I would like to avoid them as much as I can because Privacy reasons, but also Grin chain isn’t that heavy, therefore there is no need of trusting remote nodes.

I had this but it was not release it because there were too many options, it was confusing.

My question is, will this require a RFC?

I would like to see this too, but I should think how to properly preserve the user’s privacy first by doing this and also how to not ruin the experience when the data isn’t available.

Would you mind to give some details?

Definitely a MUST have.

Sounds nice, but how could we do this without changing the whole project? This won’t be a wallet anymore, it would be an Exchange with a Wallet, like some kind of Bisq but for Grin?

It might be, yeah. Maybe after v1, we’re currently in v0.2.0


I really like the address book idea + checking availability :heart:.
Furthermore, if somehow Grin++ and or IronBelly could be linked to a messaging APP that already has a contact list, e.g. Signal, and automatically detect send slatepacks (so the user can with one press click sign/confirm. That would be awesome.


Just buy more …

Does notifying users of new releases can harm and put them in danger of DNS attacks? I remember it happened with Electrum.

Truly have no idea about it!

It seems that you already mentioned most of things.

Some more suggestions:

  • Wallet management: Option to remove (or even hide) wallets from the login screen.

  • Desktop notifications: Like Electrum popups, desktop notifications for any incoming / outgoing transition.

  • RTL support: Support for RTL languages. We talked about it on the group, I think the solution we found will work.


I love it! Great idea.

It’s a good idea but can be a little trickey. Which price will be used to calculate the balance? Most of the exchanges do not allow deposit / withdrawal of GRIN and the price on CMC does not reflect the real market price.

Is it possible to sync the help page with the Wiki or maybe othe repo? As a community we can help to update and add more documentation for most of the issues, like “How to deposit to Gate”, “how to withdrew from TO” etc.

That’s all for now.


Totally agreed. It’s not good at this point to add the fiat price of grin because the price discovery has big obvious problems.

One thing I would really like to see is better compatibility with Grin/MW.

  • It should be possible to run a Grin++ wallet against a Grin (core) node.
  • It should be possible to run a Grin (core) wallet against a Grin++ node.

There has always been this strange artificial limitation where the Grin++ ecosystem is set apart from Grin (core).

I know from previous conversations that there are some incompatibilities across the various apis and performance related concerns but these cannot be insurmountable.

Maybe now is a good time to get rid of these limitations.


This is a great idea. Would this mean the interfaces would need to be standardized, possibly through an RFC?

1 Like

You can, but it’s a bit slow and not well documented (or not documented at all maybe).

I believe you can, but I’ve never tried it.

A documented standard would be ideal. Want to work with me on it?


It should work, but I’m not sure to be honest because I’m not aware of the discrepancies, without a RFC defining the API there could be some differences. I started to decouple the UI code a bit. The idea is to publish a npm package to communicate with the Grin API, the same with the nuget package. I guess that at the end I will be able to answer easly. I don’t see why we should not use the Grin++ UI against a grin-wallet and grin-node, until now, users won’t be able to use Coin Control but that could be hidden in this case.

This would be perfect; integrating Grin API would be less painful if we do this.