Simple Monero Mobile Wallet UI

Guppy Wallet — A personal wallet for the small fish

The design goal behind this wallet was to design a UI that was as intuitive to use as possible. Most users are introduced to cryptocurrencies through bitcoin. By creating a wallet UX that is as familiar as possible to what users have already used and making privacy preserving choices at the design level the UX can be intuitive to use while still maintaining privacy.

Interactive Wallet Demo

Fig. 1, Splash View

The splash view gives the user two choices to either start fresh or recover their wallet using a previously saved seed.

Fig. 2, Seed View

Seed view prompts the user to make a copy of their seed so they can recover their funds in case their mobile phone becomes unusable.

Fig. 3, Verify Seed View

Verify seed view asks the user to verify the seed they just wrote down. This checks to make sure what is entered actually matches the current seed. Without this view users would need to go back to the splash and try to recover their wallet from a seed to make sure that they had written down their seed correctly.

There is also the option to skip the verification of the seed for users who feel like it.

Fig. 4, Account View

The account view shows previous transactions in and out of the wallet. Transactions that were received are color coded green and those that were sent are colored red. The beginning and ending few characters of the Payment ID are shown on both sent and received transactions. This allows users to easily identify individual transactions without cluttering the UI. The time of the transaction relative to the current time is also included.

Any transactions that is currently unsendable (waiting to be included in a block, waiting for minimum block confirms after being received) is shown in yellow. Not showing separate balances for available and total makes it clear to the user what they can currently send.

Fig. 5, Send View

The send view shows a place for user to manually enter the address being sent to and amount being sent. The address bar would ideally only support integrated addresses. This simplifies the UX and keeps the flow the same as Bitcoin.

The ALL XMR text will, when tapped, put all of the XMR, minus the fees needed to send it, into the amount field.

Users can also tap on the qr code / magnifying glass to scan a qr code from another user to have the integrated sub address entered automatically.

Fig. 6, Send Confirmation View

The send confirmation view asks the users to verify the information they entered in the send view. It also displays the fee that the user will have to pay to send the transaction in whatever fiat denomination they selected in settings menu.

Fig. 7, Receive View

The receive view shows an integrated sub address that can be used to receive XMR. The address should be regenerated after any XMR has been received to that address. Automatically regenerating addresses after one use can help protect users from efforts to correlate one address with one user.

Fig. 8, Settings View

The settings view allows a user to revisit their seed, change their base currency (for the fee calculation in the confirm page) or change their default start page (some users may not want to display their total balance of XMR every time they open their wallet).