App launch project · Designed and built solo
Yardie
A friends-only marketplace for selling and giving away things within your own circle. No strangers, no public feed, no spam. I designed it, then built it into a working app.
- Role
- Solo designer and builder
- Platform
- iOS & Android (React Native + Expo)
- Tools
- Figma, Claude Code, Supabase
- Timeline
- May 2026 – Present
- Status
- Live, with real users testing
The problem: the group chat is a terrible marketplace
When a friend group wants to pass things along, everything gets dumped into a group chat. Photos get buried, items get missed, and nobody can track who wanted what. Two friends want the same lamp and someone has to play referee.
The obvious alternatives are worse. Facebook Marketplace, OfferUp, and Depop are built for stranger transactions: reach, anonymity, and protection against people you will never meet. That trust model is exactly wrong for trading with people you already know.
The insight that drove the design: existing platforms solve discovery for strangers. Friends need the opposite: a circle closed by default, where the etiquette of sharing is designed into the product itself.
The solution
A small, invite-only marketplace scoped entirely to your own people.
- Your Yard. A personal space of items you are offering, browsable only by your friends.
- Friend-code access, no public browsing. You see your circle’s items and they see yours. Trust is the default.
- List in seconds. Upload a photo and AI writes the title and description, built on Anthropic’s Claude vision model. Set a price, or give it away free.
- A fair way to call dibs. The first interested friend taps Dibs; anyone after gets 2nd Dibs. Backing out is a designed path, not an awkward text: the owner confirms the next person in line, and they get the news.
Story flow: how a sweater finds a new home
The core loop, end to end, including the part most marketplaces ignore:
- 1 · List. Mina photographs a sweater she never wears. AI drafts the title and description; she keeps it, sets it to Free, and publishes. Under fifteen seconds.
- 2 · Discover. Her friends see the sweater in her Yard. No algorithm, no ads. Just her circle.
- 3 · Dibs. Dana taps Dibs first. Leah is a minute late and gets 2nd Dibs.
- 4 · Confirm. Mina confirms Dana, they arrange pickup in chat, and the item flips to Taken.
- 5 · Change of heart, handled. Dana’s plans change. She backs out right where she is, Mina confirms Leah, and Leah gets the best notification in the app: “It’s yours!” No referee, no group-chat archaeology.
Every design decision below exists to keep this loop light, fair, and warm.
Design decisions
1Trust by inverting the marketplace model
Most commerce apps start public and add safety features. Yardie starts private. Removing the public feed was the core product decision; everything else follows from a closed, known circle.
2“Dibs” and “2nd Dibs” instead of like / buy
Standard marketplace language (favorite, add to cart, buy now) carries stranger-commerce baggage. Dibs and 2nd Dibs model what friends actually do: calling dibs, getting in line, and stepping aside gracefully.
3A warm, hand-drawn visual language
Dusty pink, hand-drawn icons, and item cards that read more like paper tags than product listings. The target tone is “sharing clothes with your best friend,” not “checkout flow.” Warm without tipping into childish.
4Distribution as part of the design
Every user gets a permanent share link that opens a read-only web view of their yard. Friends can browse with no install and no account; signing up through the link makes you friends automatically. The invite is the link, which removes the biggest barrier for people who would never install an app just to give away a sweater.
Process: sketch, build, test on real devices, rebuild
I started with paper sketches and Figma flows, then moved into a working React Native build early, using Claude Code to keep iteration fast. Instead of polishing static mockups, I tested real flows on real phones, found what broke, and rebuilt. The AI title feature was reworked after early tests showed people would not type descriptions at all.
Design system
Yardie’s visual language is built from two voices: Knewave, a hand-painted display face used for titles and moments of personality, and Inter carrying everything functional. The palette leads with one signature pink and stays quiet everywhere else.
Yardie
Aa Bb Cc 123
My Yard
Hanji’s Yard
$0 Blue Cup · 1 Dibs | 3 Likes
Where it stands
Yardie is live today: real accounts, real listings, AI-assisted uploads, friendships, and messaging, backed by Supabase with row-level security. Friends are testing it on Android builds and through the share-link web view. The current focus is dibs confirmation and the back-out path.
Built with React Native, Expo, TypeScript, Supabase, and the Claude vision API for listing generation.
What this project taught me
Most new users open Yardie from a link a friend texted them: they come with social context but no product context. That reshaped the design. The landing makes it clear whose yard you’re looking at, browsing stays open, and login appears only when you try to interact.
And because I design and build at the same time, a failed test becomes a rebuilt flow in days. Execution is no longer the barrier between an idea and something real in front of users.