d/kSelected work 03 / 03

Derek Kaplan

I design interface systems and ship them in code. Ten years across consumer software, fintech, and games.

Phone561-490-7633
25K installs 4.8 rating 11% conversion team of one
GemOS surface indexDesigned & shipped solo · 2024 / Present
01

GemOS

Operating system

Problem

Trading, inventory, negotiation, lending, news. A dozen jobs with nothing in common. Push them all through one app's navigation and every one gets worse.

So the product is a phone.

Decision

Every app gets its own typeface, palette, layout. DD News is a newspaper. dBay is an auction catalog. Pulse is a terminal. Only the shell stays the same.

Outcome

Players call it a phone inside their phone. One review noticed the fonts change between apps. Nobody says that about a mobile game.

Built with

SwiftUI. Widgets, icon packs, custom layouts. 20+ apps on one shell.

GemOS home screen
Home · widgets, dock
DD News reader
DD News · editorial
dBay marketplace
dBay · marketplace
02

War Room

Surveillance & response

Problem

Live player-driven economy, one person watching. Infrastructure problems and market manipulation land on the same screen.

Most of what fires isn't a problem. An operator who ignores the panel is worse off than one who never had it.

Decision

Every alert explains itself. Not just "traffic at 2x baseline" - nothing is breaking, this is usually good news, and here's the one thing that should change your mind.

Where a fix exists, the button already has the number in it.

Cost: every alert type needs its interpretation written by hand.

Outcome

Caught bot activity running against the economy and shut it down.

Drill mode came out of that. Replay an incident against the live panel and check the response still reads right.

Built with

Seven vitals against baseline, four sections, playbooks, drill mode, global lockdown.

War Room operations dashboard
War Room · vitals, traffic, active alerts
03

Pulse

Market surface · real-time

Problem

Prices move on player supply and demand, 24/7. Spot, direction, fair value, deviation, volume, pool depth. At a glance, on a phone.

Decision

Spot sits next to fair value, with the gap as its own number. Diamond $7,978, FV $7,650, running 4.3% hot.

Price tells you what it costs. Price against fair value tells you whether to act.

Cost I took on purpose: publishing fair value teaches the market to arbitrage toward it, which squeezes spreads.

Outcome

Terminal moved behind a $4.99/mo subscription in 2.6.5. Conversion runs 8%+.

Reviews call it complicated, but not the kind that makes you quit.

Built with

SwiftUI against Node and PostgreSQL. Ticker, sparklines, seven sections.

Pulse gem markets
Gems · fair value, deviation
Winston Reserve portfolio
Winston Reserve · bid/ask
Hall of Tape leaderboard
Hall of Tape · public record
04

Obsidian

Token network · web

Problem

Players deploy their own currencies. Every holder and swap is public. Anyone should be able to audit a token without already knowing what a block explorer is.

Decision

Ownership breakdown sits above the buy button. Creator share, top 10 concentration, whether liquidity is locked.

Rugging is allowed. Not knowing you're about to get rugged isn't.

Outcome

Explorer and the dev platform run on the open web, outside the app.

Four players are building their own apps on the network. One started before there was an official way to.

explorer.d47.io ↗

Built with

Web client and SwiftUI app on a shared backend. D47 settles.

Obsidian Explorer on the web
Obsidian Explorer · web · explorer.d47.io
Token detail with ownership breakdown
Token detail · ownership concentration
05

Vault

Inventory · rarity

Problem

Color, clarity, cut, origin, carat. The rarest combinations run past 1 in a trillion. Someone holding 135 stones has to read that at a glance.

Decision

Stones render at a size proportional to actual carat. 135 gems read as an inventory before you parse a number.

Odds print as a plain figure. 1 in 168,300, not a tier name. Odds compare across gem types. Tiers don't.

Small stones can be far rarer than big ones and look unimportant next to them. That's what the RAREST row is for.

Trade offers are a card inside the message thread, so terms and the argument about them stay in one place.

Outcome

Filters, rarity sort and a lighting toggle all shipped after launch, once players were managing hundreds of stones.

Built with

SwiftUI over the RealityKit pipeline. Sized by carat, grouped by type and rarity.

Vault inventory grouped by gem type
Vault · sized by carat
Vault filtered to sapphires with occurrence odds
Odds on the card
Peer to peer trade negotiation
Offer card in thread
06

The Atelier

3D · RealityKit

Problem

A flat sprite can't show metal finish, stone saturation, or how a piece reads under different light. Those differences are what it's worth.

Decision

Baked, not live. Every gem type at every tier renders ahead of time. Costs build time, and I can't add a type without a re-bake.

Worth it for two reasons. It runs on old hardware. And appearance becomes a controlled variable - same grade looks identical on every device, so players can price against each other.

Four lighting modes named for how stones actually get assessed. Studio, halogen, daylight, candlelight.

Outcome

A player who'd just finished the FGA Diploma at Gem-A wrote in to say the 4Cs are implemented right. Only outside validation I have on the grading model.

Castings shipped on top in 2.7. Global serial, both names pressed into the back. The game always knew who made every piece. It just never had anywhere to put it.

Built with

RealityKit. Baked pipeline, four lighting environments, motion glint, clarity overlays, pinch to inspect.

Jewelry designer with lighting environments
Atelier · lighting environments
Loupe inspection of a loose diamond
Loupe · pinch to inspect
ReceptionUnsolicited · App Store
★★★★★

The design aesthetic is better than 99% of apps you'll ever use (real or game).

Bountyhntr · Jul 5, 2025
★★★★★

The fact that it feels like a phone within my phone on its own OS is really immersive. The UX is top notch. The UI is even better.

tybrado · Apr 13, 2026
★★★★★

I love the layout and how much it resembles an actual trading app. It's complicated but not in the way that makes you want to give up and never play again.

BeachPotato07 · Dec 11, 2025
★★★★★

I just finished my final exam of FGA Diploma in Gem-A institution weeks ago. Some details like 4Cs standard are adopted in this game, developers really did researches in gemmology.

Er1catlike · Aug 19, 2025
★★★★★

I wish half of my actual productivity and finance apps were made with the level of care as this game.

LukewarmFlapjack · Sep 28, 2025
★★★★★

Aesthetics are on point (e.g. the fonts within each of the simulated apps), feels professional and informal at the same time.

ForTheGoodPeople · Oct 9, 2025
★★★★★

The game looks very polished, their UX is just AWESOME. it seems the designer has created the game with extendability in mind.

Heeeooooopp · Jul 7, 2025
★★★★★

the ui is just beautiful. best looking layout i've seen in any idle game, super smooth and clean.

Mabel3478 · Jul 24, 2025
Verify4.8 across 331 ratings on the App Store ↗
AlsoPrior work
2026 · Winner

Zipher

A shielded Zcash wallet for iOS, built solo. Winner of the Project Tachyon track at Zypherpunk Hackathon 2026.

2022 / 2025

Whitecap

Product strategy and systems design at a fintech lender. Internal tooling for AI-assisted credit analysis, and new financial products from concept through implementation.