TRAVIS INSKEEP

Plum Street Espresso — App & Website

Pre-ordering and loyalty for an Olympia café: one codebase, shipped as a website and as native apps.

A single Expo and React Native codebase serving a responsive website and native iOS and Android builds, on Supabase, for a working espresso bar. The menu is driven from the café's own Square catalogue — nine categories, 129 items and 541 size and price variations — so customisation, modifier validation and availability come from the till rather than a parallel list somebody has to remember to update. Customers get cart editing, pickup scheduling, order history with live status, a loyalty stamp card, and order-ready push notifications. Passwordless sign-in with guest checkout, and card entry through Square's Web Payments SDK with the native builds handing off to a hosted flow and deep-linking back on success. The website is live on Cloudflare Pages; the native builds are in TestFlight and not yet publicly listed on either store.

Category: web

Tech: Expo / React Native, TypeScript, Supabase, Square Web Payments SDK, Cloudflare Pages

Role: Designer and developer

Live

The Plum Street Espresso ordering site: a "Made to order, ready to go" hero beside the shop wordmark, address and opening hours, above the full menu listing nine categories with a live item count against each, drawn from the cafe's own Square catalogue.