Designing the Safest Wallet in Web3

How thoughtful design and iteration created a secure,
user-friendly wallet for Web3 privacy.

As Design Lead, I drove the end-to-end design of the Node app, balancing technical requirements with user-centric workflows. My role included user research, competitive analysis, wireframing, prototyping, and final product design to deliver an intuitive and secure Web3 wallet.

ABOUT THE COMPANY

Iron Fish is a privacy-focused blockchain designed to encrypt transactions, ensuring secure, accessible and compliant privacy for all digital assets.

PROJECT DURATION

This project has been an ongoing effort, with nearly three years of continuous design and iteration.

THE PROBLEM

The Node app needed to support Iron Fish’s mission of accessible privacy by simplifying advanced Web3 workflows. It aimed to attract and retain technically proficient users while addressing key pain points, such as managing multi-accounts, pending balances, and complex transactions—all in a space lacking workflow precedent.

Challenge 1: Supporting multi-account users

Users needed a seamless send flow across multiple entry points—navigation, account cards, overviews, or from specific assets. Additionally, for users managing dozens of accounts, we required an efficient way to locate and distinguish accounts.

SOLUTION

We designed a dynamic send flow that adapts to the action's context and introduced features to simplify account management.

Accounts can be named, assigned unique colors, and display their held asset types within the account selection card, making it easy to locate and distinguish between accounts.

Additionally, we addressed edge cases where users manage numerous accounts by incorporating sorting and search functionality, enabling them to quickly find their desired account.

The challenge was to design an intuitive experience for managing view-only accounts, where users can view transactions but can’t send assets, and ensure clarity around exporting accounts as view-only to prevent confusion.

Challenge 2: View-Only Accounts

CONTEXT

1.Portfolio Tracking: Users can monitor accounts for auditing or tracking purposes without exposing private keys.

2.Shared Access: Shared view-only keys allow collaborators to view balances and transactions securely.

SOLUTION

We addressed these challenges by disabling restricted actions for view-only accounts and adding contextual explanations near disabled features to reinforce account limitations. The same approach was applied to exporting accounts as view-only, ensuring clarity and consistency.

When a transaction is sent but not yet confirmed by the blockchain, the user’s balance remains unchanged, creating confusion for users expecting immediate updates.

This can be confusing because a user could either think (1) their transaction wasn’t complete or (2) that their balances are incorrect.

Challenge 3: Pending Balances

CONTEXT

When a user sends IRON, their balance won’t update until the transaction is confirmed on-chain, potentially leading to uncertainty or overspending.

For example, if I send you 3 $IRON from a balance of 10 $IRON, my account will still show 10 $IRON until the transaction is confirmed.

PROCESS

I worked closely with our engineers to deeply understand the problem space, ensuring no technical details were overlooked.

Given that Node App users are highly technically proficient, the concept of a pending balance didn’t require extensive user education, allowing us to focus on creating a clear and effective UI for managing unconfirmed transactions.

SOLUTION

We added a simplistic Pending Balance UI to show balances awaiting confirmation. Once confirmed, the pending balance disappears, ensuring users always have accurate account information.

THE PROBLEM AT SCALE

A key challenge to address is effectively communicating pending balances across multiple accounts, especially as bridges go live. This includes designing a clear and intuitive solution for scenarios involving multi-account and multi-asset transactions with aggregated pending balances. This will be a challenge we tackle next.

Challenge 4: Multi-Asset and Multi-Action Transactions

The Node app needed to support sending multiple asset types to multiple recipients, as allowed in our CLI. This created a challenge in designing a clear and intuitive transaction history table, one without any current precedent.

CONTEXT

For example, using our CLI, I could send multiple assets—like $IRON and WETH—to multiple recipients in a single transaction.

SOLUTION

This multi-year effort evolved alongside the app’s expanding feature set, starting with tables designed for single-asset transactions and iteratively refining them to support the advanced multi-asset and multi-recipient capabilities of our CLI.

Through this iterative process, we developed a clear data table and transaction info page to simplify complex transaction details, with plans for ongoing use to uncover additional edge cases and drive further refinements.

Challenge 5: Ledger Support

To cement the Node app as the safest wallet in the world, we needed to integrate Ledger hardware wallet support. This required layering Ledger’s secure flows into our existing import and send flows while improving upon the sometimes cumbersome user experiences of typical Ledger integrations.

RESEARCH

Integrating Ledger support required addressing common UX issues, such as unclear device-to-app communication that could create bottlenecks.

For example, apps often fail to notify users to open the correct Ledger app, causing friction. I tested dozens of apps, identified pain points, and improved workflows to ensure a smoother, more intuitive experience.

SOLUTION

Through research and iteration, we streamlined Ledger verification for seamless integration, enhancing security while maintaining usability

CONCLUSION

The iterative design of the Iron Fish Node app addressed user pain points while advancing business goals.

Dynamic send flows, view-only account clarity, and a Pending Balance UI simplified complex workflows, enhancing usability for technically proficient users.

Multi-asset transaction tables and seamless Ledger integration reinforced security and trust, positioning the Node app as the safest wallet for Web3.

These solutions will help make privacy more accessible, driving user engagement and adoption.

Previous
Previous

Iron Fish Incentivized Testnet