Case study · Webko
Klinika PINKOVA: moving a clinic website from Tilda to Angular
Webko develops and maintains the website of Klinika PINKOVA, a cosmetology clinic in Vilnius: a static Angular site in four languages that replaced Tilda to cut running costs, simplify updates and give full control over SEO.
- Project
- Website of a cosmetology clinic in Vilnius: laser, RF lifting, body shaping, permanent makeup
- Our role
- Contractor: migration off Tilda, development, SEO, deployment and support
- Scope
- Home page, 10 service pages, careers and legal pages, thank-you pages: 29 pages in Lithuanian, 26 of them in Russian, English and German
- Main stack
- Angular 22 with static prerendering, TypeScript, SCSS; a small PHP form relay to Telegram
- Languages
- Lithuanian, Russian, English, German
- Status
- Live since 26 October 2026 at pinkova.lt
The task
The site was built on Tilda. The clinic paid a monthly fee for the builder, every change meant working page by page in a visual editor, and SEO details such as hreflang, structured data, image alt texts and redirects were hard to control and to check.
The new site had to keep every indexed address working, look the same to visitors, send enquiries to the clinic's Telegram group as before and speak four languages, all without an application server to run.
What we build
The same site on a new foundation
Angular 22 with standalone components, signals and static prerendering. Every page becomes plain HTML at build time, so the site runs on ordinary hosting: no builder subscription and no server to maintain.
Content as typed files
Each page is a typed content file per language. Phone, address, opening hours and social links live in one place, so changing the hours means editing one line instead of every page.
SEO built into the build
Title, description, canonical, hreflang and JSON-LD (the clinic, its services and prices read from the price tables, the website and each page) are written into the prerendered HTML, together with a sitemap with hreflang. The build fails on a missing image alt text, a broken language pair or an oversized title.
No lost addresses
Old Tilda page addresses and duplicate URL forms get a 301 redirect, www goes to the main domain in one hop, and the new sitemap was resubmitted in Search Console, so the pages the clinic already had in Google keep their place.
Four languages that survive auto-translate
Lithuanian, Russian, English and German with a language switcher. Text blocks reflow instead of overlapping, because browser auto-translate makes text 10 to 35 percent longer; an automated test checks it.
Enquiries to Telegram, analytics after consent
Forms post to a small PHP endpoint that relays the enquiry, with attachments, to the clinic's Telegram group, with a spam trap and a rate limit. Google Analytics and Meta Pixel load only after the visitor accepts cookies.
Lighter pages and simple releases
Images are served as WebP at display size, from 31 MB down to 7 MB. The static build is deployed over FTPS to the clinic's existing hosting, with a separate staging copy that search engines do not index.
The site



Technology
- Front end
- Angular 22 (standalone components, signals, zoneless), SCSS, typed page content per language
- Rendering and SEO
- Static prerendering, SEO and integrity checks that fail the build, SEO audit of the output, sitemap with hreflang
- Server side
- Apache redirect rules, a PHP relay to a Telegram bot (attachments, spam trap, rate limit)
- Quality
- Vitest, angular-eslint, an automated overlap test for browser auto-translate, smoke test of the live site
- Hosting
- Static files over FTPS to the existing hosting; staging on a separate noindex host
Result
- No builder subscription — the site is a set of static files on hosting the clinic already has.
- One place for the facts — phone, address and hours are defined once and reused on every page and in the structured data.
- Pages that ship checked — every build is verified for SEO and integrity before it can be deployed.
- Images from 31 MB to 7 MB — faster pages on mobile connections, with the original JPEG kept only for social previews.
No traffic or ranking figures yet: the site went live on 26 October 2026. The facts are from the project repository, as of 30 October 2026.
More case studies
- PEV Deals — A six-language catalogue of discounts on electric rides: prerendered Angular storefront, admin panel and Spring Boot API.
- Terasa28 — A seaside apartment rental site with a guest account, a booking calendar and an admin panel for approving requests.
- Intela — Reusable Angular components, module business logic and report pages for a tax-management portal inside a global corporation.
Moving a site off a website builder?
Describe the task in a few lines and we will reply with an estimate and a proposed way to start.
Contact Webko