
Oksana Rudak — psychologist, Odessa · 2026
A trust-first site that turns followers into first sessions
A warm, editorial practice site for a psychologist who helps women through toxic relationships, abuse and self-esteem recovery — built to earn trust on a sensitive topic and turn a hesitant visitor into a booked consultation without pressure.
An owned, bilingual home that converts Instagram followers into private first contacts
The problem
Oksana helps women through a sensitive subject — leaving toxic relationships, abuse, manipulation, rebuilding self-esteem. Her reach was Instagram and Telegram only: real trust with an audience, but no owned home that explains the work, presents her services and courses, ranks on Google, speaks to both Ukrainian- and Russian-speaking clients, and lets a hesitant person book a consultation privately without DMing a public profile. On a topic this personal, the whole game is trust and tone — a generic template would have done more harm than good.
My approach
- Designed a warm, editorial interface — an ivory canvas, deep-navy and terracotta accents, large serif display type and unhurried motion, so the first impression reads as trust and care, not a hard sell.
- Made it bilingual (Ukrainian / Russian) with
next-intl, matching the real client base in Odessa rather than forcing one language. - Structured the site around the practice — services, courses, client reviews and a clear "book a consultation" CTA on every screen.
- Put a low-pressure contact path front and centre — a private booking form plus direct Telegram, so reaching out feels safe and one tap away.
- Wired lead capture to instant Telegram notifications so no first message waits, which on a sensitive topic is the difference between a reply and a lost contact.
Stack & why
- Next.js 16 + React 19 — server-rendered, indexable pages so the practice finally has an owned property that ranks, not just a feed.
- next-intl (UA default, RU) — designed bilingual from the start; retrofitting a second language later is far more expensive.
- ASP.NET Core 10 (Clean Architecture + CQRS) + PostgreSQL behind it — so leads, services, testimonials and certificates become managed content the owner controls, not hard-coded markup.
- Telegram bot for lead alerts — the notification channel the owner already lives in, so a new enquiry surfaces in seconds.
The result
- A professional, calm home that turns profile-visitors into private first contacts instead of leaving them stuck in Instagram DMs.
- Bilingual reach matching the actual Odessa client base.
- Search-visible pages that explain the work, so people searching for help — not just existing followers — can find it.
What was hard
The hard part wasn't technical — it was tone. On abuse and toxic relationships, a site has to feel safe before it asks for anything. Every design decision (palette, copy density, how prominent the booking CTA is, how little pressure to apply) was weighed against trust. Building something that converts without feeling salesy, on a subject this personal, was the real work.
Related work

A portfolio site that books clients for a hair colorist
2026Zvezdochka — hair-coloring studio, Odessa
An image-heavy, multilingual portfolio and booking site for a professional colorist — fast galleries served from object storage, reviews, courses, and direct booking channels.
An owned, multilingual home that turns Instagram traffic into bookings

A product catalog that turns visitors into quote requests
2026SunCold — containers & solar equipment supplier
A multilingual B2B catalog and lead-gen site for a container and solar-energy supplier — fast product pages, a quote-request flow, and SEO content (blog/FAQ) to pull in buyers.
A self-serve catalog and quote funnel that earns its own search traffic
Want something similar built?
I take on a small number of projects at a time. If this looks like your problem, let's talk.