Product & Brand
XO Wallet
A self-custody Telegram wallet designed 0-to-1 as the only designer, with 1,000+ first-week signups.
Overview
A Kaspa wallet inside Telegram grew into a three-chain self-custody product
XO Wallet put self-custody inside Telegram. Users could create a wallet, store KAS and related tokens, send and receive funds, back up a recovery phrase, and later manage assets across Kaspa, Solana, and Ethereum.
I joined before the product had a brand, interface, or defined flow. As the only product designer on contract, I owned the Telegram mini app, native app, multi-chain expansion, design system, and launch motion. The work ran from September 2024 through January 2025.
The impact
XO moved from a Kaspa-only release to a multi-chain wallet inside Telegram. The launch brought in users quickly, and later internal data showed people were still holding and moving funds inside the product.
1000+
First-week signups
Telegram mini app launch
~1,000
Active users
Nov to Dec 2024
3 chains
Multi-chain release
Kaspa, Solana, and Ethereum
Problem
Fast Telegram setup still had to make backup and recovery impossible to misunderstand
Self-custody gave users control of their funds, but it also made them responsible for access, backup, and recovery. Telegram added platform risk. A compromised account, lost access, or incomplete recovery setup could affect the wallet.
The first release focused on Kaspa. User demand later expanded the product to Solana and Ethereum. That change added network-specific balances, addresses, fees, transaction states, and failure cases.
The product also used a shard model that users had not seen before. The founder and senior developer, who also served as security lead, owned the technical model and implementation. I had to make setup, backup, recovery, and account control understandable without hiding the consequences.

Research
The closest competitor covered familiar wallet flows, but XO's shard model needed its own explanation
I worked from four product needs. Kaspa community members wanted a wallet inside Telegram. Self-custody users wanted control of their seed phrase and a clear recovery path. Newer users needed fast setup and persistent backup guidance. After the Kaspa release, multi-chain users asked to manage Solana and Ethereum in the same wallet.
In 2024, I used Tomo Wallet as the closest direct reference. It ran on Telegram, used a self-custody model, and was moving toward multi-chain support. I compared its onboarding, send, receive, swap, and network patterns with XO. Tomo showed how familiar wallet actions worked inside Telegram. XO still needed a different explanation and recovery flow because of its shard model.
I mapped that model with the founder and security lead before designing the interface. They split the Telegram authentication token into two shards. XO stored one part in encrypted cloud storage, and the user backed up the other. This reduced the chance that one compromised Telegram account would grant full wallet access.


What we learned
Users wanted the speed of a Telegram wallet without losing a clear recovery path. The shard model could stay in the background during setup, but the seed phrase, backup status, and cost of skipping backup had to stay visible.
"Let me get into the wallet quickly, but keep reminding me what I need to save so I can recover it later."

Interview Participant
Crypto Trader
Ideation
Shard creation stayed quiet while the seed phrase and backup risk stayed visible
Keeping shard creation quiet and recovery clear
I worked through every setup, backup, recovery, and failure state before choosing what to show. Exposing the shard process during onboarding would have added a new security concept before users had even entered the wallet. Hiding the seed phrase would have obscured the only recovery path users controlled.
I kept shard creation in the background and brought the 12-word seed phrase forward. The flow moved from account creation to shard confirmation, PIN setup, seed phrase, backup, and wallet entry.
The team made backup skippable, with the decision led by the security lead. The argument was speed: users could enter the wallet without finishing backup. I kept the cost visible through a persistent reminder on the home screen.
A saved seed phrase let someone restore the wallet after losing Telegram access. Without it, recovery was impossible. I stated that consequence directly in the flow.

Moving from Kaspa-only to multi-chain
I first designed XO as a Kaspa-only wallet. After release, user feedback showed demand for Solana and Ethereum, and the team expanded the product.
I used one shared structure and kept the selected network visible before users copied an address, reviewed history, or sent funds.
The work roughly doubled the number of states in the product, but it let XO move from a focused Kaspa wallet into a wider asset product.

Stopping the native app
I later adapted the mini app into a native experience, following the platform's OS guidelines. That version used a standard seed-phrase and PIN setup, and its account model removed the Telegram dependency, so it did not need the shard flow.
Telegram then improved mini-app access and let users place mini apps on their home screen. XO was already performing well there, while Halo Alpha showed stronger market demand. We stopped native-app development instead of splitting the team across two surfaces that solved the same problem.

Designs
Every screen kept the active chain, backup state, and recovery path in sight
I owned the product structure, onboarding, recovery, wallet states, transaction states, multi-chain behavior, native app, design system, visual identity, motion, and launch content.
I kept the existing XO logo concept and modernized the mark so it felt cleaner and more current across the product and launch material.

Inside Telegram's WebView, I designed around limited native gestures, missing system-level biometric access, and viewport changes when the keyboard opened. I tested PIN entry, seed confirmation, forms, send flows, and errors with the keyboard open.
I separated sensitive account controls from everyday actions. Seed and key information sat behind warnings. Shard removal lived in settings. Balance and transactions led the home screen, while backup status remained visible until the user resolved it.
For the multi-chain release, I redesigned network selection, chain-specific balances and addresses, transaction history, send and receive flows, loading and empty states, unsupported-address warnings, network fees, and cross-chain errors.
I also created motion and video assets for alpha, open beta, and partner campaigns. Launch work with the Kaspa team and Tangem Wallet extended the product beyond its immediate social channels. The same visual system carried from announcement through first use.
XO also used token-holder governance votes for major wallet and token decisions. This gave the community a direct role when a change affected the product.

Lessons
The security model only worked if users understood the cost of skipping backup
Every planned phase shipped between September 2024 and January 2025. The Telegram mini app passed 1,000 signups in its first week. Internal figures later recorded roughly 1,000 active users in November and December 2024. Kaspa, Solana, and Ethereum support shipped, followed by the native app.
The founder and security lead owned the technical security model. I designed setup, backup, recovery, warnings, account control, and failure states across the user experience.
Keeping the shard process quiet reduced setup friction. Keeping the seed phrase and backup status visible gave users a clear recovery path.
The team stopped the native app after the Telegram product met the core need and Halo Alpha became the higher priority.


