band website

Client

4Watty

Role

Fullstack — content migration, data model, frontend and deployment.

Year

2026

Stack

Next.js 16, React 19, Payload CMS 3, PostgreSQL, TypeScript, Tailwind CSS v4, S3, Python, Docker

Next.js 16React 19Payload CMS 3PostgreSQLTypeScriptTailwind CSS v4S3PythonDocker

Project

Website for the East-Bohemian rock band 4Watty — gigs and tickets, news, photo galleries, line-up, playlist and booking contact. The project was a migration from a long-running WordPress site to Payload CMS, carrying over the entire article and gallery archive and backfilling posts from Facebook.

Fullstack — content migration, data model, frontend and deployment.

Project Preview
Project Preview
Project Preview
Project Preview

What I built

WordPress migration — Python extractors for the WordPress XML export and NextGEN galleries, followed by CMS importers and a legacy-path backfill.

A redirect generator from the old WordPress URLs so the band kept its discoverability through the migration.

Facebook post import through two paths — API and scraping — to backfill news that never existed on the old site.

The CMS data model — concerts split automatically into upcoming and past, galleries with a tile-span-driven grid, band members, tracks with audio, news, and hero, about and contact globals.

Homepage sections as async server components reading straight through the Local API with caching helpers — no extra network hop between the CMS and the site.

S3 media storage with an automatic fallback to local disk until the credentials are filled in.

Czech date formatting, cookie consent, a form builder for booking enquiries, an SEO plugin, Sentry, and seed scripts for content and navigation.

IconLet's talk about your project!

ImageImage