Osadchy Dental

The preview of the site may differ from the current version. All information is provided for presentation purposes only and may be partially or completely outdated.

Together with my team I built a premium website, widget and AI-powered chatbot for Dr. Ihor Osadchy’s dental clinic.

Year
2026
Technologies
AI, Corporate website, WordPress
Role
Analysis, architecture, development, content
Design
Figma — a designer from my team
Timeline
3.5 months: December 2025 — March 2026
Backend
PHP 8.4, Timber + Twig, no build systems

A Premium Clinic That Outgrew Templates

Dr. Ihor Osadchy’s dental clinic is the kind of practice where the average bill is not a filling but complex implantology and aesthetics. A website like that does not sell «dental treatment» — it sells trust in one particular doctor, and it has to work equally well for a patient from Poltava, from Warsaw and from Tel Aviv.

So this is not a stack of plugins but a custom theme built from scratch: a page builder on 44 Gutenberg blocks, content in three languages, and an admin panel where the clinic manages prices, opening hours and the team without calling a developer.

  • 42 service pages — from professional cleaning to atypical extraction, each with its own price and search markup;
  • 13 doctors — profiles with specialities, certificates and links to the procedures they perform;
  • Three languages — Ukrainian, English and Russian; the English version works for medical tourism;
  • An AI assistant — answers from the site’s own content and books appointments right in the chat, by voice or in Telegram.

The project sits where two of my services meet — WordPress development and AI agents and chatbots. Here is how it was built.

42

service pages

Each with a price, Service schema and its own SEO

13

doctors

Profiles with specialities, linked to their procedures

3

languages

339 URLs: Ukrainian, English and Russian

172

commits

From init to launch: December 2025 — March 2026

The Old-School Way: Design First, Code Second

Designing in the browser is fashionable. I don’t work that way, and this project is a good illustration of why.

First I took the clinic’s old website apart: which content was doing its job, which procedures people actually searched for, where visitors got lost. Then I talked to the client and turned all of it into a brief — not «make it beautiful» but specific pages, states and scenarios. With that brief, a designer from my team started work.

What follows is the chain that saves weeks:

  • Figma — mockups the client reviews and signs off before a single line of code exists. Dr. Osadchy liked the design straight away;
  • Markup — the approved mockups went to a front-end developer from my team, who built them on twig-base, my own engine that produces markup already shaped the way WordPress expects it;
  • Development — I ported that markup onto wp-base, my starter theme, which brought the ACF cache, HTML minification, WebP conversion and the core structure with it.

Because of that «slow» planning, no page had to be rebuilt twice: the layout was already agreed, and the markup landed on a finished foundation. I use the same approach for web apps and portals.

Headings Manrope 200–800 · variable font
AaBbCcDdEeFfGgHh 0123456789 Osadchy Dental Clinic
Interface and body Inter 100–900 · optical size 14–32 · italics
AaBbCcDdEeFfGgHh 0123456789 Implantology, aesthetics, paediatric dentistry — 42 procedures

An AI Assistant You Don’t Just Talk To — It Books the Appointment

This was the first project where I put my own AI widget directly on a client’s website — not a subscription service, but a module inside the theme. It knows exactly what the site says, and it carries the conversation through to a result: from «how much does an implant cost» to a booking with a date, without a manager touching it. That is no longer a chat widget; it is full automation of the first contact with a patient.

  • Search across the site’s own content (RAG) — the model pulls key terms out of the question, searches the services and articles in the same language, and answers from the real page text instead of guessing;
  • Three providers to choose from — OpenAI, Claude or Gemini, switched in the admin panel; if one goes down or gets expensive, the clinic is not left without an assistant;
  • Voice mode — you can simply talk to it: the first half-second calibrates background noise, a second and a half of silence ends the recording, Whisper transcribes and a synthesised voice answers;
  • The same assistant in Telegram — the bot mirrors the website logic, with its own calendar keyboard instead of the usual button menus;
  • Booking straight from the chat — the assistant shows a calendar that knows the clinic’s days off, and the finished request goes to a manager.

Every conversation lives in its own admin section: the history, saved audio, an AI summary of the dialogue, the visitor’s city and the manager’s notes. A request from the chat reaches the CRM with a link to that exact conversation — you can see which sentence made the person decide to book.

  • AI
  • Corporate website
  • WordPress
  • PHP 8.4
  • Timber
  • Twig
  • MySQL
  • ACF Pro
  • WPML
  • OpenAI
  • Claude
  • Gemini
  • ElevenLabs
  • Telegram Bot API
  • SalesDrive
  • Cloudflare Turnstile
  • Ringostat
  • Schema.org
  • SMS-Fly
  • TurboSMS
  1. 6 December 2025

    The “init” commit

    The start: theme core, Timber and Twig, module structure.

  2. 19–22 December

    The clinic’s frame

    Services, doctors, specialities, redirects from the admin, page QR codes.

  3. January 2026

    Three languages

    WPML, the language switcher, language suffixes in every cache, email templates.

  4. February

    Content and blocks

    The densest month: service pages, doctor profiles, content in three languages.

  5. 22 February

    Form protection

    Cloudflare Turnstile in invisible mode and SMS confirmation of requests.

  6. 15–16 March

    The AI chat

    The widget with RAG search, three providers, booking and a Telegram mirror.

  7. Late March

    Launch

    Final responsive polish — and the site went live. 172 commits in 3.5 months.

How 42 Services Moved From the Old Site

The dullest part of any redesign is moving the content. Forty-two services, forty-seven articles, thirteen doctors. Multiply by three languages. By hand that is months of copy-paste, and this is exactly where projects die.

I did it differently — and it turned into a separate tool that now works on other projects:

  • Parsing the old site — AI agents went through the pages and pulled the content out in a structured form, not as one wall of text;
  • A roadmap — from that came the plan: what moves across, what gets rewritten, what is dropped as outdated;
  • One reference page instead of forty-two — I assembled one exemplary service page and one article by hand: the right blocks, spacing, headings and internal links;
  • My own skill for the agents — following that reference, agents filled the remaining pages with the parsed content, keeping the same structure.

The win is not only time. When the structure is described once, all forty-two pages come out equal in quality — you never get the first ones done carefully and the last ones rushed. I use the same approach in SEO and localization.

Frequently Asked Questions

A template covers the first 60% — a grid of services and a contact form. The rest — three languages with correct SEO markup, prices the clinic edits itself, opening hours that simultaneously feed the widget, the Google markup and the booking logic, plus an AI assistant — runs straight into someone else’s architecture. A custom theme means each of those can be done properly rather than «as far as the template allows».

It does not answer from memory: it first finds the relevant services and articles in the right language, and their actual text goes into the answer. Contacts, address, prices and opening hours are inserted from the clinic’s settings rather than paraphrased by the model.

The provider is switched with a single field in the admin: OpenAI, Claude or Gemini. The chat logic, RAG search, booking and the Telegram bot behave identically no matter which model is answering.

3.5 months: the first commit was 6 December 2025, the launch came at the end of March 2026. 172 commits in total, covering the Figma design, the markup, the theme, content migration in three languages and the AI assistant. Voice mode, the CRM and end-to-end analytics were added after launch.

The site went live at the end of March — and the work did not stop there: after launch the assistant learned to speak out loud, leads started flowing into the CRM, and forms and calls became visible in analytics. See it live at osadchyclinic.com.ua. If you need something similar with its own AI assistant, start with AI agents and chatbots or integrations and automation.

Let’s discuss your project?

Free consultation + cost calculation

More projects

Clients.Express clients.express Development of a B2B SaaS platform Clients.Express for automating appointment scheduling and billing in the service industry with built-in AI agents and Telegram integration, where I served as the architect and sole developer.
Clients.Express
Melodiya Hir melodiyahir.com.ua “Melodiya Hir”: from spontaneous idea to reliable tool. We transformed complex operational booking tasks into an easy and understandable digital service.
Melodiya Hir
ELLE Uzbekistan elleuzbekistan.com Together with smplfy.eu and ELLE Uzbekistan, I created a large-scale project with unique functionality. In-depth business logic, custom solutions, and technical challenges made this project a real test that I was pleased to pass.
ELLE Uzbekistan
Engard engard.ua A complex challenge with a massive amount of unique business logic — a full-fledged e-commerce with a club membership system, discounts, promo codes, and individual conditions. I took on this challenge and brought the project to the finish line, despite all the difficulties.
Engard
Stolen Life stolenlife.org Stolen Life is a documentary-art photo project revealing ordinary Ukrainians whose lives were violently interrupted by Russia’s full-scale invasion. The protagonists stand naked beside the ruins of their homes—vulnerable, stripped of everything except their bodies and the uncertainty ahead.
Stolen Life
Monbar Cider monbar.com.ua Together with Nixwood, I created an online store for Monbar Cider. The team provided the design — I implemented the programming, adapted the logic of the catalog, cart, and orders to the brand’s specifics.
Monbar Cider
ARC BarberShop arcbarber.shop I created a vibrant youth landing page for my friends’ barbershop. Dynamic design, emphasis on atmosphere and booking convenience — everything to make the client immediately understand: they are expected here!
ARC BarberShop
DTF Streetwear donttakefake.com A special page for DTF Magazine — a series explainer about streetwear. Visually rich, structured for content, with an emphasis on readability and audience engagement.
DTF Streetwear
RISS riss.com.ua RISS is a conservative community fighting for a better future for Ukraine. I created a platform for uniting like-minded people, presenting ideas, and attracting new participants to the movement.
RISS
Clients Portal clients.kaplia.pro I developed a custom CRM system and client portal — convenient, functional, and an extremely necessary tool. Project history, documents, communication — all in one place.
Clients Portal
Bratstvo bratstvo.com.ua I created an online store for the Bratstvo brand on a custom e-commerce system, without WooCommerce. Personal account, order history, and flexible settings — everything aligns with the brand’s concept.
Bratstvo
AvtoEvakuator avtoevakuator.com.ua Official website for an auto evacuation company. Clear services, transparent tariffs, quick contact — everything to help the client reach out for assistance with one click.
AvtoEvakuator
Pawco www.mypawco.com PawCo is not just a website; it is the embodiment of my deep and genuine love for animals. Its development, maintenance, and constant improvement have taken over three years. This journey has left only warm memories and heartfelt gratitude to everyone I had the fortune to work with on this project.
Pawco
MediaOption mediaoption.agency I created a website for the Thai digital agency MediaOption in collaboration with the smplfy.eu team. I implemented technical solutions, adapted the design for WordPress, and ensured stable platform performance.
MediaOption
Safronovs’ Private Cheesery safronovfarm.com An online store for a private cheese dairy on a custom e-commerce system. Product catalog, cart, order system — everything is configured for the specifics of a local producer.
Safronovs’ Private Cheesery
10 Maple St, Port Washington, NY, 11050 10maplest.com I created in three days a concise and convenient landing page for office space rental in New York. Simplicity, speed, conversion — the main tasks of this project.
10 Maple St, Port Washington, NY, 11050
CRS Credit API crscreditapi.com The professional team at CRS Credit API developed a new version of their main website. They implemented original design ideas into a convenient Gutenberg editor, ensuring a fast, stable, and easy-to-manage platform.
CRS Credit API
Litslink Software Development soft-dev.litslink.com Created a full-fledged landing page builder for Litslink company based on WordPress Network with Cloudflare API integration. The ability to create an unlimited number of subdomains — perfect for scaling.
Litslink Software Development
Gallery KoloUa gallery.koloua.com BO “KOLO UKRAINE” is a mini site for the project, where for a donation you could receive a thank you in the form of a gift. I implemented the site in a semi-volunteer format, carefully transferring the design of the “Kolo” team into a stable, understandable, and adaptive system based on WordPress and WooCommerce.
Gallery KoloUa
RememberUs rememberus.org RememberUs is a website for a charitable initiative that supports the most vulnerable in Ukraine. It was created by a volunteer, with respect for the team’s mission: convenient, concise, without unnecessary details — all to help people quickly get involved in assistance.
RememberUs
Zhyvytsia zhyvytsia.com.ua Pine kvass is a unique drink that I enjoy drinking myself. For the brand Zhivitsa, I created a bright online store on WordPress with a custom e-commerce system, personal account, and order history. Easy to use, fast, and stable.
Zhyvytsia
SideUp sideup.com A corporate website for SideUp company. Clear structure, service presentation, and emphasis on professionalism — everything to build trust with B2B clients.
SideUp
Mriya mriya.kleynodwatches.com A landing page for a limited collection of watches in honor of the Mriya AN-225 aircraft. Part of the proceeds goes to the aviation reconstruction fund. An emotional project about a dream in the sky.
Mriya
Climate Home climate-home.com.ua Climate Home is a corporate website for an air conditioning selection and installation service. The goal is to convey expertise and simplicity: clear structure, warm visuals, and an emphasis on the first consultation. Each block works to build trust and prompt action.
Climate Home
Customer login

This site uses cookies

We use cookies to personalize content and ads, provide social media features, and analyze our traffic. We also share information about your use of our website with our social media, advertising, and analytics partners, who may combine it with other information you have provided to them or collected when you use their services. By continuing to use our site, you consent to our use of cookies and accept our Privacy Policy and Terms of Use.

Virtual assistant
Hi! I'm the KAPLIA.PRO virtual assistant! I can tell you about our services, portfolio projects, ballpark pricing, and how we work — from websites and eCommerce to web apps, CRMs, bots, and AI agents. Ask away!

By continuing with the AI assistant, I agree to the site’s terms of use and privacy policy.

AI assistant may make mistakes in responses