Upholstery service
Reupholstery, repair and custom furniture. A dark editorial landing page with museum photos instead of stock.
Ask for a live demo
The business is real, so we show its name and link only with the owner’s consent. We’ll walk you through the live version on a call.

- What
- Landing page
- Where
- Yekaterinburg
- Year
- 2026
- Stack
- Next.js, React, TypeScript
The brief
A service in Yekaterinburg reupholsters and repairs soft furniture. Customers mostly ask how much it costs and whether a new sofa would be easier. The workshop’s own work only lives on social media, and stock photos of sofas give a template away at once.
What we did
- An editorial look. A dark page, large serif type and antique furniture from the Museum of the Middle Urals on the first screen. The photo is under a free licence, with the author credited.
- A seat cross-section. The diagram shows four layers: upholstery, filling, spring unit and frame. Pick a fabric and you see its price per metre right away, so it’s clear what the customer pays for.
- Prices as a guide. Starting prices for reupholstering a sofa, a corner sofa and a bed, taken from the company’s Yandex Maps listing with the date checked. Everything else is quoted from a photo.
- Reviews with sources. Each review shows where it was published. We didn’t write any reviews ourselves.
- A quote from a photo. The main button leads to Telegram: send a photo of the furniture and get an estimate.
How it’s built
Next.js and TypeScript with CSS Modules. Headings are set in Cormorant Garamond, body text in Inter. Process and fabric photos come from Wikimedia Commons, and each licence is recorded in a media rights table.
Screens


