ROZENFELD.
Back to our work

IdealPermanent: a site the owner runs herself

We launched the site in 2026.

The permanent makeup studio had a site nobody could touch without a developer. Every price change meant an email and a wait, and online booking did not exist at all. We built a site the owner runs entirely herself, and enquiries from it go straight to Telegram.

Open idealpermanent.cz
idealpermanent.cz
Home page of the IdealPermanent website
Home page of the idealpermanent.cz website

The brief

The old site could only be changed through a developer, and it had no online booking. Clients therefore called or wrote on messengers, and some enquiries got lost on the way. The brief was: a site the owner can run herself, and booking she hears about immediately.

  • Change copy, prices and photos without a developer
  • Show past work so it can be searched through
  • Let a client book from the site, not through a messenger
  • Load fast even on a phone with a weak signal

What we built

A site that looks like a clinic, not a salon

Home page, service catalogue, price list, gallery of past work, a section on courses and the legal pages. The design is restrained and clinical.

Why this way. The studio builds on the physiology of healing, not on decoration. The look should confirm that, not argue with it.

The IdealPermanent site on a phone
The IdealPermanent site on a phone

Every treatment has its own page

Brows, lips, eyeliner, special techniques and courses. Each treatment has a description, a price and a duration at its own address.

Why this way. Someone searching for powder brows should land on the powder brows page, not on a general price list.

idealpermanent.cz
Service catalogue on the IdealPermanent site
Service catalogue on the IdealPermanent site

Sixty-six pieces of work sorted into categories. A visitor filters for brows, lips or eyeliner and does not have to scroll through the rest. Photos are uploaded straight from the admin.

Why this way. A client wants to see her own treatment, not sixty-six other people’s. A filter cuts that to a couple of clicks.

idealpermanent.cz
Gallery of past work with filters on the IdealPermanent site
Gallery of past work with filters on the IdealPermanent site

A price list changed in the admin, not by email

Sixteen treatments with price and duration. Prices also flow into structured data for search engines.

Why this way. An out-of-date price on the site costs the studio trust and pointless phone calls.

idealpermanent.cz
Treatment price list on the IdealPermanent site
Treatment price list on the IdealPermanent site

Booking that reaches Telegram

A form with a choice of service and a preferred time. The enquiry is stored in the admin and goes to Telegram at the same time. It works with JavaScript switched off.

Why this way. An enquiry the owner hears about the next day has usually been booked somewhere else.

An admin nobody sees from outside

Enquiries with statuses, services, a gallery with photo uploads, reviews, questions and answers, around sixty editable texts and free-form pages. Everything visible on the site can be edited without a line of code.

Why this way. A site you can only reach through us is a trap for the client. We would rather do the extra work and hand over the keys.

Our work in the client’s words

„I did not expect it to be possible to have a website ready by the next day at a very pleasant price, and still have my new ideas added to it along the way. Ilja, you are a treasure.“
Inna KlíčmanováIdealPermanent

The outcome

The owner runs the content herself, enquiries do not get lost, and pages open in tenths of a second. From the old site we carried over a portfolio of sixty-six pieces of work and the complete price list.

  • Around sixty texts on the site change without a developer
  • Sixty-six pieces of work in a gallery with category filters
  • Sixteen treatments in the price list, each on its own page
  • An enquiry reaches Telegram within seconds
Frontend
Next.js 16 (App Router), React 19, TypeScript
Styling
Tailwind CSS 4, responsive layout
Data
Prisma 7, SQLite
Forms
Server Actions with progressive enhancement
Images
next/image, automatic compression through sharp
Infrastructure
Ubuntu VPS, nginx, systemd, Let's Encrypt
Integrations
Telegram Bot API, Resend

When this makes sense for you too

The industry does not matter. The same approach fits anywhere at least two of these three sentences are true:

  • The site’s content changes more often than you feel like emailing a developer
  • Customers decide on results, and those results have to be visible
  • You need to know about an enquiry straight away, not when you next open your email

Want something similar?

Tell us what the site has to do. In half an hour we settle the scope and the timing, and only then you get a price that does not change afterwards.

Arrange a consultation

More case studies