Daniel Urquhart

Pye · Solana staking

Two years of R&D on what staked SOL can do.

Pye explores what staked SOL can do beyond sitting still. I joined as the first hire, before the company raised its $5m seed led by Variant and Coinbase Ventures. As Head of Design I’ve designed every product we’ve tried, owned the brand and design system, often run product too, and since 2026 built the frontends. Most of the work is R&D: ship a product, test it with the people who’d use or fund it, decide what comes next.

Role
Head of Design, frontend, often product
When
2024 to now
Scope
Product, design system, brand, frontend
Joined
First hire, before the $5m seed

Open in the 3D portfolio

Pye marketplace for trading reward tokens across validators
Trading principal and reward tokens across validators.

The products

Every product designed. Most of them built.

Each product was a different answer to the same question. Some are still live, others were retired, and two are still unannounced.

Pye Trade: the dashboard of PT and YT positions

Pye Trade

Design + build

A market for PT and YT tokens: staking yield split into tokenised principal and yield.

Validator console: the validator dashboard

Lockups and the validator console

Design

Fixed-term stake with a better rate, and the console validators use to create lockups, manage their team and model revenue.

Pye Stake: choose a validator and a lockup duration

Pye Stake

Design + build

The staking side of the PT/YT market, where positions are created.

SpeedStake: selling future staking rewards upfront

SpeedStake

Design + build

Sell future staking rewards upfront, plus a modal other protocols and validators could embed.

Pye Vaults: the curated vaults list

Pye Vaults

Design + build

Fixed-term yield vaults on Solana.

Stake Utils: tools for Solana native staking

Stake Utils

Design + build

An open-source toolkit for Solana native staking.

How we tested

Tested early, fixed fast.

Builds went in front of people within days: the team and design partners, validators, investors, and the odd hackathon. Bug blitzes did the most work. Thirty minutes each on every core flow, every failure path and every flow again on a phone, with issues logged against six usability heuristics.

Core flows30 min / tester
  • ✓Connect and switch wallet
  • ✓Onboarding: open, skip, reopen
  • ✓Deposit
  • ✓Withdraw
  • ✓Reject in wallet
  • Failed transaction
  • Every flow on mobile

Think aloud: what you’re trying to do, what you expect, what actually happens.

VisibilityDid that actually work?
  • No pending state after signingFixed
  • Balance updates lateMed
Real-world matchIs this jargon?
  • Term needs a one-line explainerFixed
User controlCan I get out of this?
  • No cancel mid-flow on mobileHigh
ConsistencySame thing, same look?
  • Two button styles for one actionFixed
Error preventionCan I break it?
  • Max amount ignores feesFixed
  • Empty field submitsFixed
MinimalismToo much on screen?
  • Advanced stats shown by defaultLow
How a bug blitz board looks. Flows and findings here are illustrative, not from a real product.

The system underneath

One foundation across every pivot.

Products came and went, so the foundation had to carry over. I set up the design system, Foundry, and the brand as code, so each new product started from shared components and tokens rather than a blank file, and the team and AI tools worked from the same source.

/* Foundry, generated from tokens.json */
:root {
  --layers-base-primary: #eceae8;
  --layers-surface-default: #f1efed;
  --layers-elevation-highlight: #ffffff;
  --layers-elevation-shadow: #e0ddd9;
  --text-primary: #24201c;
  --text-secondary: #6c6660;
  --brand-primary-purple: #9a4dff;
  --brand-action-green: #0d9c5e;
  --brand-secondary-green: #14f195;
  --brand-highlighter: #fbee8c;
}
The tokens as code, built from one JSON file.

Brand as a tool

A brand anyone on the team can use.

Requests kept arriving from outside design: a marketing asset, a test UI to try an idea, a wireframe to share a concept before it went to product, a deck or a one-pager that looked like Pye. Good work, all of it waiting on one designer.

So I wrote the brand down as something an AI agent can read and apply. A judgment layer covers character, voice and restraint. Skills load it first: one writes marketing copy and layout, one reviews work and reports drift as Fail, Flag or Note. Foundry holds the values in code, so the skills name tokens and never quote a hex.

Now anyone can point their AI tools at the folder and get most of the way there. Anything that ships still comes through design, and the judgment in the system is mine. The pieces below are marketing work the system produced from the rules and tokens.

From the example library. Each one is the original HTML, scaled down.

Since 2026

From designs to production frontends.

From February 2026 I built what I designed, in React, Next.js and TypeScript with AI-assisted coding, shipped as reviewed PRs. The handoff went away. An idea could go from Figma to something people could test in days.

What I took from it

Product-market fit was never a straight line.

Over two years we tried staking marketplaces, validator tooling, structured yield, trading products and a collateral-backed stablecoin. What the search built is a way of working: small teams, shared foundations, production-quality prototypes, and one-week cycles when speed mattered.

Not every product became the business, and that was the point. The system and the tooling took an idea to something users could touch in days rather than quarters, so the team had real evidence before committing months of engineering. Some things need far more than a week. But to find out whether an idea deserves the months, a week is usually enough. That is what I’d bring to the next team.

NextFoundry