PLEŠO TATTOO: a website that shows 30 years of tattooing in full
PLEŠO TATTOO s. r. o.
2026-09-26
Plešo has been tattooing since 1996, and his studio is in Malinovo, which the site calls by its historic name, Eberhard. His work spans realism, animals, mandalas, tribal, black and white, colour and cover-ups. The old WordPress site had three public pages and a single gallery of 1,252 photos in one long run, with no sorting and no way to open a piece full screen. We built a new portfolio site around a motif we called RYTINA, Slovak for engraving: works appear on the page through engraved hatching, the same way black-and-white realism is built up, and each one hangs as an exhibit with its own label. The archive now lives on its own page with 895 entries (645 photos, 235 videos and 15 before-and-after series), two filter axes and a viewer you can page through with arrow keys or a swipe. The client runs the archive himself through a simple admin in Slovak. Booking goes by phone, WhatsApp and email, and the old URLs from Google were redirected. The project took 6 working days on a €300 budget.
Tattoo artist portfolio + archive + portfolio admin
Project type
Show the breadth of 30 years of work and lead visitors to booking
Main goal
Selected screens
Visual project preview shows how the website looks on different devices. Responsive design ensures clear display on mobiles, tablets and desktops.
Screenshot 1 of 6
The non-trivial parts of the project
A tattoo artist sells on breadth and detail. So the job was not to draw a pretty landing page, but to build a showcase for hundreds of works whose material arrived in several waves, and then hand it over to someone who wants to keep adding more himself.
- Problem #1
A visual direction without a written spec
There were no reference sites and no words on style. The anchor was Plešo’s logo and his own banner with an angel, a skull and a rose; the direction had to be read out of them.
Our solutionWe pulled out what the banner kept repeating: monochrome, selective red, stone and the engraved hatching from the logo. That became the RYTINA motif and the light hall with dark rooms. The hero rebuilds the banner as a web composition: two figures at the edges, the name in the middle, the crown as the only red point.
Technologies and implementationDesign system derived from the banner + the RYTINA motif
- Problem #2
A tattoo cannot be cropped, not by an inch
Portfolio templates crop photos into a grid, which on a tattoo means cutting off a lion’s head or the end of a sleeve. The client named it himself during review: „lebo je to také useknuté“. For a tattoo artist a cropped piece is worse than none.
Our solutionWe introduced an exhibit rule: frame height is computed from the work’s aspect ratio and the screen height, so the whole piece and its label are visible without scrolling. The same rule holds in the archive viewer and for videos. The source file is checked too: the dragon leg piece was re-framed from the original so the leg shows in full.
Technologies and implementation.exhibit utility + object-contain + aspect ratio from data
- Problem #3
A sleeve or a back piece cannot be shown in one photo
Large pieces wrap around the body. A single flat photo keeps half of them, so many pieces also have a video that turns the work in front of the camera. Video accounts for roughly a quarter of the archive.
Our solutionVideo is a first-class exhibit type in the archive, like a sculpture on a turntable. The tile carries the word VIDEO and an engraved ring instead of a play icon. Each clip is at most 1 MB, muted, with a poster and loading only once opened; under prefers-reduced-motion it never autoplays. Videos are interleaved with photos in the grid so the archive does not open on a wall of posters.
Technologies and implementationStepped-CRF encoding under 1 MB + preload="none" + grid interleaving
- Problem #4
Material arrived in several waves
The material arrived in several waves, with no consistent quality or order. It had to be turned into an archive where every piece has its place.
Our solutionWe went through every wave as curators: grouped clips of the same piece, paired before and after states, removed watermarks, and where a work also existed on the old site, published the better source. The client’s notes always took precedence over any selection of ours.
Technologies and implementationMedia curation + archive inventory + state series
- Problem #5
The client wanted to run the archive himself
While looking through the archive on a call, he said: „to by som už mohol sám urobiť“. A tattoo artist uploads from his phone; photos run 5 to 12 MB and videos tens of megabytes, while a serverless function on Vercel accepts at most 4.5 MB.
Our solutionWe built a Slovak portfolio admin with password-only sign-in. Files go straight from the browser into storage, which is why a 24 MB photo and a 107 MB video both go through. It saves on its own, each save is a new version, a second open window cannot overwrite the first, and an empty save is rejected. The client also received short instructions in Slovak.
Technologies and implementationVercel Blob direct uploads + content versions + optimistic locking
- Problem #6
The old domain already had its place in Google
The /portfolio gallery page was the second strongest URL on the old site, and its images lived in Google Images under WordPress file names. On top of that, WordPress had left sitemaps, RSS feeds and empty header and footer templates in the index.
Our solutionWe shipped 9 permanent redirects: both portfolio pages and every old image URL lead to the archive, where those works actually are; the old sitemaps point to the new sitemap.xml, and the templates and feeds to the home page. Add TattooParlor structured data, llms.txt, IndexNow and Search Console verification.
Technologies and implementationRedirects in next.config + JSON-LD + IndexNow
Similar problems in your business? We will help you solve them with modern tech stack.
Final structure
Complete web structure designed for clear navigation and a simple path to contact or order. Each page has clear purpose and optimized navigation.
- Home
- Archive
- Booking
- Privacy policy
- Cookie policy
- Portfolio admin (private)
Most important website sections
Each section solved specific business problem and increased conversions
- 01
A hero laid out like the client’s banner
A pale concrete wall, a torso covered in his work on the left, a black-gloved hand with the machine on the right, and the name PLEŠO in Bodoni Moda with a carmine crown in the middle. Below it the disciplines Realizmus · Colourwork · Custom and the only script line on the site: “Umenie, ktoré zostáva”. The corners carry Bratislava · Eberhard, Est. 1996 and 30 rokov skúseností.
- 02
Selected works and the signature piece
Seven works, each composed around its own aspect ratio. Then a dark room with the signature piece, the Polynesian back. The label with style and placement always sits on the wall beside the work, never on the photograph.
- 03
Craft, and numbers in the client’s words
A portrait at work, three principles from the old site (design, ink quality, hygiene) and counters for 10,000+ clients, 25,000+ tattoos and 30 years. The numbers are the client’s own, given on a call, and the site treats them that way: as his words, not as a measurement.
- 04
PRED / PO (before / after)
The section heading is the comparison itself. Under it, two frames side by side, the original tattoo and the cover-up, with no sliding curtain that would always hide one of them. On mobile the photos run edge to edge.
- 05
Disciplines as an index
Seven disciplines in the order the client uses them: Realism, Animals, Mandala, Tribal, Black & White, Cover up, Colour. The needle line from the logo tracks the active row while a piece from that discipline changes beside it.
- 06
The archive on its own page
895 entries with two filter axes, TYP (photo, video, series) and DISCIPLÍNA. A click opens the work full screen with nothing cropped; arrows or a swipe page through, Esc closes, and the URL carries the work’s ID so it can be shared as a link.
- 07
Booking on a single screen
The Rezervácia button in the header leads to its own page with three channels: phone, WhatsApp and email. There is deliberately no form; the client wants people to call or message him directly.
Project stack
Frontend and the RYTINA motif
One shared component brings images in through hatching and works on both the light and the dark field. Every animation has a prefers-reduced-motion variant, and each frame is sized from the work’s own aspect ratio rather than from the grid.
- Bodoni Moda · Schibsted Grotesk · DM Mono · Italianno
- Logo carmine as the only colour
- prefers-reduced-motion respected
- Next.js 16
- React 19
- TypeScript
- Tailwind CSS v4
- framer-motion
- Lenis
Archive and portfolio admin
Archive metadata and new files both live in Vercel Blob. Every save writes a new version, so a change shows up immediately and can be rolled back. Sign-in is by password only, and a second open window cannot overwrite the first one’s work.
- Direct uploads from the browser
- 40 stored archive versions
- Protection against concurrent overwrites
- Vercel Blob
- PBKDF2 heslo
- Route Handlers
- next/image
SEO, analytics, and compliance
TattooParlor structured data with the disciplines listed as an offer catalogue, nine permanent redirects from the old WordPress site, llms.txt and IndexNow. GA4 loads only after consent and tracks contact clicks, opened works and archive filters.
- JSON-LD TattooParlor + Person
- 9 redirects from old URLs
- Cookie banner and legal pages
- JSON-LD
- robots.txt & sitemap.xml
- llms.txt
- IndexNow
- GA4
- Silktide Consent Manager
- Vercel
Modern tech stack = fast website + easy maintenance + long-term support
Delivery process
Communication ran over WhatsApp and phone, because that is how the client works. Each wave ended with a deploy, so on the next call the client saw a live site rather than a mock-up.
- 16–17 September
Concept, the RYTINA motif and the first link
2 daysThe banner and logo became a design system, the RYTINA motif and a first build on 47 works picked from 1,252 downloaded originals. On day two we aligned the site even more closely with the banner: a light stone hall, the hero as an unfolded banner, the exhibit rule and a standalone archive page. That evening the client got the link.
- 22 September
Videos and state series
1 dayAnother wave of material came in. Videos got their own exhibit type, the state series a section on the home page, and the archive a second filter axis by type.
- 23–24 September
The client call and the portfolio admin
1 dayOn the call the client corrected the facts: Eberhard instead of Ružinov, Est. 1996 stays („to tam necháme“), 30 years of practice („No, máme 30.“). We simplified the state section to PRED / PO following his „Musíme to spraviť jednoduchšie“, added more works, and built the admin through which he now adds work himself.
- 25–26 September
Booking, SEO and handover
2 daysThe booking button got its own page with phone, WhatsApp and email; about WhatsApp the client said „No to by bolo super.“ Then came redirects for the old URLs, consent-gated GA4, the cookie banner, a privacy policy with the details from the invoice, Search Console verification and the studio address as the client specified it. That was the handover, after 6 working days.
Project FAQ
Why is there no booking form?
The client wants to talk to people directly, so the booking page offers phone, WhatsApp and email. WhatsApp was added at his request. Those clicks are set up as key events in GA4, because without a form they are the only measurable outcome of a visit.
Can the client add work without us?
Yes, to the archive. The admin at /admin lets him upload photos, videos and state series, change the discipline and description, reorder and delete; it saves on its own. The home page stays with the studio, because every slot in Selected works is composed around the aspect ratio of a specific frame.
Where do the 10,000 clients and 25,000 tattoos come from?
From the client, as his own estimate from his career. The site presents them as his words, not a measurement, and the admin does not touch them. Every other number on the site, such as the 895 archive entries or the filter counts, is computed from the data and updates on its own.
What happened to the old site and its gallery?
The /portfolio and /my-portfolio pages and every old image URL permanently redirect to the new archive. The old files could not be matched one to one because they carried WordPress file names, so a visitor from Google Images lands in the archive, where that work actually is, instead of on a 404.
Why is the site not all dark, like most tattoo studio sites?
Because the client’s banner sits on pale marble and concrete, and at the outset we agreed on a „kombinácii strieborných odtieňov“. Two rooms stayed dark, the signature piece and the selected works, entered from the light hall. The contrast of pale stone and a black glove comes straight from the banner.
Run a tattoo studio, or any craft that sells on its portfolio?
We build sites that show your work in full, never cropped, with an archive you keep adding to yourself from your phone. And if you have an old site, we carry over what Google already knows about you.
Leave your contact (email or phone is enough)
Work never cropped • An archive in your hands • SEO carried over