Skin Solutions
A rebuild for a cosmetology clinic in Lublin, where nothing is published until it is confirmed.
- Type
- Clinic website rebuild
- Role
- Design and development
- Year
- 2026
- For
- Client work
- Stack
- Next.js 16 · React 19 · TypeScript · GSAP · Server Actions · Zod · Resend

02
Context
The existing site was a template export with no structured data, no sitemap, broken internal links and several third-party requests on load.
In a medical-aesthetic context, anything published - a price, a claim, a device name - has to be true and confirmed by the clinic.
03
Role
Client work delivered through Binary Brain Technologies. I designed and built the rebuild.
04
Idea
A publishing gate.
Content is data with a status. A price appears only once it is confirmed, with who confirmed it and when - and hides itself again after 180 days. A fact needs to be marked verified. A launch check fails while anything is still open.
The result is a site that can go live early without ever showing an unconfirmed number.
05
Experience
- A treatment explorer with categories, ten treatment pages and eighteen skin-concern pages at their original URLs.
- Booking stays with the clinic’s existing booking service; the site hands visitors over rather than rebuilding it.
- The original logo redrawn with CSS from its own geometry, drawn once on load and static under reduced motion.
- No cookies and no third-party requests on load; the map loads only when asked for.



06
System
- InterfaceNext.js 16, static pages with daily revalidationGSAP ScrollTrigger loaded only near the one section that uses it
- ContentTyped content modules behind a publishing gateAutomated content check for launch
- FormsServer Action + ZodSigned timing token, honeypot, rate limit
- SecurityStrict Content Security PolicyEverything self-hosted
- InfrastructureVercel
07
Details
Prices that expire
Confirmed prices carry a confirmation date. After 180 days they stop rendering until someone confirms them again, and daily revalidation makes that happen without a deploy.
The logo is still the logo
The animated mark is drawn from the original logo geometry, checked against the source files so the brand itself does not change.
08
Output
A finished rebuild: treatment explorer, 10 treatment pages and 18 skin-concern pages, booking handed to the clinic’s booking service.
09
Reflection
Designing the gate took less time than any single page - and it is the part that makes every page trustworthy.