A running portfolio of tools and apps I've designed and shipped, using AI both as the product and as the partner helping me build it.
gavai.us
Interactive career website
This site. A hand-crafted career showcase: landing, full resume, an interactive "should you hire Patrick?" decision tree, references presented as letters that open out of sealed envelopes, and the page you're reading now. Built end-to-end with Claude Code and auto-deployed to Cloudflare Pages on every push.
HTML/CSS
Claude Code
Cloudflare Pages
Call Coach
Automated post-call analysis & CRM update
Sales managers hate two things: listening to every rep's calls, and nagging reps to keep Salesforce clean. This tool eats a call recording and spits out (a) a personalized coaching email covering what the rep did well, what to improve, and what to follow up on, and (b) a set of suggested Salesforce field updates: MEDDPIC qualification, close date, next step, key stakeholders. The coach shows up automatically, the CRM stays current, and managers get their weekends back.
AI / LLM
Sales Enablement
Salesforce
MEDDPIC
👗
E-commerce · Replatform
Outdoor Apparel Replatform
A live Shopify Plus site rebuilt headless on commercetools
A full replacement storefront for a women's outdoor apparel brand, moving a live Shopify catalog onto commercetools, with a custom Next.js front end that uses Sanity as its headless CMS. Roughly 200 products and more than 3,000 variants, plus categories, reviews, a retailer locator and two blogs, rebuilt with faceted search, a cart, and a full checkout: addresses, live sales tax, card, Apple Pay and Google Pay, order confirmation, accounts, and order history with tracking. Page weight fell from tens of megabytes to under one, Lighthouse performance climbed from single digits into the high eighties and nineties, accessibility scores 100, and the security header grade moved from F to B. It runs today as a private, password-gated preview with checkout working end to end in test mode, not yet cut over.
commercetools
Next.js
Sanity CMS
React
TypeScript
Tailwind
Stripe
Google Cloud
🔖
Productivity · Multi-platform
The Veault
Save it once, find it when it matters
The Veault keeps the recipes, restaurants, movies & TV shows, articles, blogs, videos and other content you save from Facebook, Instagram, TikTok and the web, and holds on to them even after the original post is deleted. Share a post or link to it and it pulls out the part worth keeping: a recipe's ingredients and steps, the restaurants named in a food video, the text of an article. It files each one where you'll find it again. Recipe ingredients go on a shopping list that stays in sync with Apple Reminders, so "Hey Siri, add milk to my shopping list" shows up in the app too. It also runs my to-do lists, with sub-lists, due dates and priorities: groceries and jobs around the house, and a list for every project at work. It's what keeps me efficient at home and at work. It started as a recipe importer and grew from there. It's built in Swift and SwiftUI, a personal project that isn't on the App Store.
iOS
macOS
Web
Share Extension
AI Extraction
Reminders
Email Follow-up System
Nothing slips through the cracks
An AI layer on top of the inbox that watches outbound threads, surfaces the ones that have gone quiet, drafts context-aware nudges in your voice, and keeps commitments on the radar. Closes the gap between "I meant to circle back" and "I actually did."
AI / LLM
Email Automation
Workflow
Automated Calendar
A workweek designed on purpose
An AI assistant that reshapes the work calendar around priorities and focus rather than whoever asked first: protecting deep work blocks, batching status and update meetings, and defending strategic thinking time from reactive noise. The calendar serves the outcomes, not the inbox.
AI / LLM
Calendar
Wellbeing
Pickleball Scoreboard
One tap, every screen on the court updates
A multi-user scoring app that runs natively on iPhone, iPad, Apple Watch, and Apple TV, keeping them all in sync. The scorekeeper taps their watch; the iPad on the bench, the Apple TV driving the scoreboard, and every spectator's phone all update in real time. Designed to feel invisible during play and unmistakable from across the court.
iOS
iPadOS
watchOS
tvOS
SwiftUI
CloudKit
SHooSH
Hold, speak, and it lands already written
Press-to-dictate for Mac and iPhone. Hold a key, speak, and clean written text lands in whatever app you were already typing in, with nothing to switch to and nothing to paste. Transcription runs on device while you are still talking, then a second pass rewrites it to fit the destination, so a Slack reply and a work email come out sounding different. Built over a month and privately published, in daily use on both platforms.
macOS
iOS
Swift 6
SwiftUI
Custom Keyboard
On-device ML