Case 02 · Rebalancer · iOS

Rebalancer

Designed and built solo, from concept to App Store.

Role
Solo Lead UX + AI — design and build with Claude Code
Product
Crypto Rebalancing
Platform
Mobile app · iOS
Rebalancer — crypto portfolio rebalancing app
01

Problem & Context

I rebalance crypto myself, and the pair I actually care about is almost never one an exchange will show me. Everything is priced against USDT.

If I want to know where SOL stands against XRP, no exchange and no wallet treats that as something I can keep on a list and watch.

02

Roadmap

I owned every layer of this one — concept, product design, the iOS app, the backend, the servers, the APIs and the push notifications — built with Claude Code.

  1. 01

    Research

    Competitor analysis, reviews on the App Store and YouTube, Telegram channels, interviews with the crypto community. Nobody treated an ALT/ALT pair as something you could keep and watch.

    Interviews and competitor review
  2. 02

    Prototype

    Several concepts ran side by side. I committed to one — the pair as the only object the app asks you to create — and cut the rest instead of keeping options open.

    Concepts cut to one
  3. 03

    Testing and iteration

    Two rounds through TestFlight, then reworking what testers actually stumbled on rather than what looked worth polishing.

    Two TestFlight rounds
  4. 04

    Publish on the App Store

    Shipping was a design decision too: what to leave out so the first version could stand on its own, and what the listing should promise.

    Shipped to the App Store
  5. 05

    Analytics and post-launch research

    Analytics went in to replace opinion with behaviour, and the reading of reviews and channels carried on after release rather than stopping at launch.

    Analytics wired in
03

Research

Market analysis

Where people look now, and what each one does
Where people look nowAny ALT/ALT pairKept as a pairRatio historyAlert on the ratioHoldings in it
TradingView spread chartsDoes itPartlya chart layoutDoes itDoesn'tDoesn't
Community Pine scriptsDoes itPartlyper chart, per scriptDoes itDoes itDoesn't
Converters — Coinbase, MetaMask and the restDoes itDoesn'tDoesn'tDoesn'tPartlyone amount, typed in
Portfolio trackersDoesn'tfixed basesDoesn'tPartlyof the portfolioPartlyon the USD priceDoes it
RebalancerDoes itDoes itDoes itDoes itDoes it

User personas — 3 groups

G1

Crypto investor

WhoHolds several alts and moves between them on the pair's ratio, not the dollar price.

PainNo exchange or wallet shows ALT/ALT directly — you read two USDT prices and divide them yourself.

G2

Experienced rebalancer

WhoFollows the ratio by hand — a spreadsheet, or arithmetic in their head — and keeps coming back to check.

PainIt all rests on remembering to look. Nothing watches the number, so the moment can pass unnoticed.

G3

Technical trader

WhoTechnical enough to chart a spread in TradingView or write their own indicator.

PainThe workaround never becomes a product: TradingView advises against alerts on spread charts, and a script needs an account and setup.

User flows — 6 flows

  1. Off-appApp Store listingFive screenshots and a description — no trial, no preview
  2. DecisionDoes this solve my problem?
    No
    EndNever installedThe listing is the entire pitch
  3. Yes
  4. ActionInstall
  5. Inside the app
  6. SheetDisclaimerA notice with one button — nothing to answer
  7. ScreenEmpty watchlistOne line, one button, no tour
  8. DecisionObvious what to do here?
    No
    EndLeaves with nothingNothing on screen explains a ratio
  9. Yes
  10. ActionTap Add pair
  11. SystemA live pair appearsSeeded and already tracking, not a blank form
  12. ActionSwap in your own coins
  13. DecisionWorth keeping?
  14. No
    1. EndDeletedStraight back to the empty state
    Yes
    1. EndKeptAn alert on it is the next thing to do
04

Prototype

There was no Figma stage. I built the prototype with Claude Code, iterating on a real phone — screens and system decided together.

Screens · 4
01Watchlist — the open pair, then the rest as rows with sparklines
02Simulator — each leg priced at a target ratio, against the current one
03Alerts — delivered on the lock screen when a ratio crosses its threshold
04Pair screen — both holdings restated in the coin on the other side
Biggest challenge

The alert is the product, and an alert has to arrive with the app closed — that one requirement pulled a backend behind a one-person design project. Price sources that answer a phone refuse a data centre, iOS background refresh cannot be trusted, and an alert that has fired must not fire again: every one of those is a server problem, not a screen.

Cloudflare WorkersCron TriggersKVD1R2Expo PushAPNsPagesStoreKit 2
05

Testing

Two rounds through TestFlight, on other people's phones. Each flow gave up one thing I had assumed, and each one changed the build.

01

Creating a pair

Found
Nobody could see how to enter the amounts they hold from the watchlist.
Changed
A prompt button on the watchlist, so holdings go in without leaving the screen you are on.
02

Living with the watchlist

Found
The first thing people reached for was reordering the cards.
Changed
Press and hold to drag — the order of the list is the user's, not mine.
03

Pair detail and the simulator

Found
People expected the app to remember their holdings and carry them into the simulator.
Changed
A MAX button that fills in the saved holding, so the simulator starts from real numbers.
04

Hitting the free limits

Found
The paywall landed out of nowhere and read as a wall.
Changed
A plain note that the free limit is reached first, with a way to read about Pro — so going further is a choice, not an ambush.
06

Publish on the App Store

The listing had to sell the same idea in every storefront, so the cards lead with the pair — not the feature list.

The product page as it stands in the store — the same pair-first pitch, from the subtitle down to the cards.
07

Analytics and post-launch research

Analytics is in place and the reading of reviews and channels carries on. The question it has to answer first: whether a first alert leads to a second — the signal that it has entered someone's routine.

First questions
  • Whether a first alert leads to a second
  • Which flow people stop at
  • Whether the free limits sit in the right place
08 — Outcome

It's live. One person took it from concept to the App Store — design, app, backend, delivery.

What it settles into in daily use is the next thing to measure.

09 — Reflection
The backend was bigger than I scoped. Next time I’d size the invisible parts first.
With AI I shipped end-to-end what would take a team — but only the parts I understood.