Work
Each of these started with a real conversation. Understanding the person behind the practice, their goals, and who they're trying to reach. Here's what we built.

Therapist Practice
Private Practice Website
Designed and built a complete therapist website for a fictional private practice specializing in anxiety, stress, and life transitions. Every page, every word, and every design detail was created from scratch to show what a therapist's online presence can look and feel like.
- ✦4-page site: Home, Services, About, and Contact
- ✦All website copy written from scratch
- ✦Custom color palette and design direction
- ✦Client testimonials section
- ✦Interactive psychology term tooltips (CBT, MBSR, ACT, somatic techniques)
- ✦Contact form with email confirmations and scheduling embed
This project started with the question: what would it look like if a therapist had a website that actually reflected the quality of their work? I researched real private practice sites, studied how therapists describe their approach, and wrote all the copy myself — from the “Who I Work With” section to the practice details and testimonials. The design was intentional: serif headings to feel editorial and trustworthy, organic shapes to feel warm and approachable, and wavy transitions to create a sense of calm as you scroll. Every interactive detail, like the psychology term tooltips, was designed to educate without interrupting the reading flow.
Technical details
Tech stack: Next.js (App Router), React, TypeScript, Tailwind CSS, Vercel
Typography: Cormorant Garamond (serif headings and pull quotes) paired with Nunito (sans-serif body text), loaded via next/font/google
Design system: Custom sage color palette (50–950), organic border-radius image masks, inline SVG wave dividers, full-bleed image sections with overlay, and custom text selection styling
Components: Interactive PsychTerm tooltip component (hover/click with outside-click dismiss), scroll-aware sticky header with mobile hamburger nav, dedicated demo layout with its own footer and metadata (noindex)
Azot
Medical Device Startup
Partnered with the founder of a cold compression medical device company to design and build a professional website. The site helps doctors and wholesale clients explore the product catalog and request detailed quotes for exactly what they need.
- ✦6-page website with 19-product catalog
- ✦Full website copy and custom color palette
- ✦Quote request system for wholesale clients
- ✦Automatic email confirmations for inquiries
- ✦Domain and business email setup
- ✦Privacy policy and terms of service
Started with a kickoff call to understand the founder's background, her goals for the site, and the specific needs of her wholesale clients. I built out the first draft, sent over a link for review, and refined based on her detailed feedback over several rounds until we landed on a final version she's proud to use at trade shows and client demos.
“You get things done. I love that you're transparent when you don't fully understand something. You tell me you'll look into it and figure it out. And you always do.”
Shine Lu, Founder of Azot
Technical details
Tech stack: Next.js, React, TypeScript, Tailwind CSS, Vercel
Integrations: Resend API for transactional emails, Calendly embed, custom cookie consent system with geolocation detection
Features: Responsive design, SEO optimization, custom contact form with dual email flow (confirmation to client + notification to founder)
Animate Myself
AI Image Generation App
Built the entire experience from scratch. From the moment someone uploads a photo, to a preview of the result, to payment processing, to automatically receiving the finished image in their inbox. A complete web application powered by AI.
- ✦Multi-step flow from upload to final result
- ✦Image preview before purchase, full image unlocked after
- ✦Secure payment processing
- ✦Automatic email delivery after purchase
- ✦Image history for returning users
- ✦Spam protection system to block abuse
Technical details
Tech stack: Next.js, TypeScript, Tailwind CSS, Vercel
Integrations: OpenAI API for image generation, Stripe for payments with webhook handling, Supabase for file storage, Resend for transactional emails
Features: Custom spam protection with IP blocking, automated email delivery system with custom-designed email templates, payment webhook handling for instant delivery

Alona Animal Hospital
Veterinary Practice
A portfolio piece showcasing what a clean, welcoming practice website can look like: services, team bios, testimonials, gallery, and easy appointment booking all on one page.
- ✦Comprehensive one-page layout
- ✦Full service showcase with categories
- ✦Team profiles and credentials
- ✦Yelp testimonials integration
- ✦Photo gallery of the practice
- ✦Location, hours, and contact info
Have something in mind?
I'd love to learn about your practice and what you're looking for. Let's start with a conversation.

