
The Challenge
Anita Nazarenko is a physical therapist specializing in breathing therapy. She needed a website that reflects her personality — not a clinical template, but something bold and maximalist. The site had to sell webinars and courses, book consultations, and process payments in Ukrainian hryvnia. Every other therapist website looks the same; this one needed to stand out.
But "bold and maximalist" means different things to different people. Rather than guessing, we built 5 complete design themes so Anita could experience each one live and pick the direction that felt right — then switch whenever she wants.

Our Approach
We built five complete design themes switchable at runtime — Maximalism, Clean Luxury, Editorial, Black & White, and Spa Tone. Each is a full visual identity with its own color palette, decorative elements, and typography feel. The entire theme is a set of CSS variables applied to document.documentElement, so switching is instant with zero re-renders. Visitors can even switch themes themselves from the bar at the bottom of the page.
Key decisions:
- ●Mono Bank API for Ukrainian payment processing — server-side price validation prevents tampering, webhooks handle async confirmation
- ●GSAP ScrollTrigger for animated reveals that respect
prefers-reduced-motion - ●Data-driven products — courses, webinars, and consultations stored as TypeScript data files, not a CMS, for zero-latency static generation
- ●Decorative SVG components — asterisks, stars, flowers, and blob shapes that adapt color to the active theme
Next.js 16
Latest App Router with React 19 and edge API routes
GSAP + @gsap/react
ScrollTrigger reveals with accessibility-aware motion
Mono Bank API
Ukrainian payment processing with webhook confirmation
Tailwind CSS v4
Utility styling with CSS variable theming for 5 design systems
Key Features
- ●5 runtime design themes — Maximalism, Clean Luxury, Editorial, Elegant, Minimal — with localStorage persistence
- ●Consultation booking at two tiers (Primary diagnostic 1800 UAH, Follow-up 1600 UAH) via Google Forms integration
- ●Course and webinar marketplace with client-side cart and checkout
- ●Mono Bank payment flow — invoice creation, redirect to hosted page, webhook confirmation, success/failure routes
- ●Animated reveals with stagger, scroll-triggered fade-ins, and decorative SVG components
- ●Email notifications via Resend for order confirmations
Outcome
A portfolio that doesn't look like every other therapist website. The theme switcher lets Anita express different moods for different audiences — maximalist for personal branding, clean luxury for professional referrals. Integrated commerce means courses and consultations are sold directly from the site, with Mono Bank handling payments in the currency her clients actually use.
