This whole hub - ten pages, every fixture, both squads, a live calendar, a full timeline, the knockout bracket and a hall of champions - went from a blank page to live, accurate and good-looking in about five hours. No new dependencies. No external services. Just Domma. Here's the honest how — and why it was that quick.
The brilliance is the system
Four simple parts that do all the heavy lifting
Collections
Every fixture, player, champion and team lives in a collection — structured data you edit in the admin. 104 fixtures, 52 players, 22 winners, 48 teams. Type a score, the site updates.
Custom CSS blocks
A single styled template per card — squad cards, fixture cards, the winners' roll, the timeline. Write it once; the data pours through it. Change the design in one file, every card follows.
Components
The live bits — the month-grid calendar and the kick-off countdowns — are self-contained Domma components that fetch their own data and render in the browser.
Shortcodes
Pages are composed from plain [collection], [hero] and block tags. No build step, no framework wiring — just drop a tag and it renders.
Why it's that fast
One source of truth, many views
The same fixtures collection powers the fixture cards, the calendar, the timeline and the full schedule — four completely different views, zero duplicated data. Edit one row in the admin and all four update at once. That's the whole trick: build the data once, render it everywhere.
Fast
File-based, cached, one script tag, no build pipeline. New pages render instantly; edits go live on save.
Powerful
Collections, blocks and components compose into anything — cards, grids, calendars, timelines — all from the same data.
Lovely
One theme, custom CSS where it counts, 55 self-hosted images. Consistent and on-brand on every page.
Fast, powerful, lovely to look at — and entirely owned. That's why Domma exists.