perfectdesign.
Our Work
Live client projectSports events platform

Tournamy

A sports events platform that replaced a WordPress shop: online registration and payment, live scores, tables and brackets that update themselves, and a scoring desk for the side of the pitch.

4
Weeks to launch
136
Matches scored live
1,700+
Visitors on day one
tournamy.com/
Tournamy — Sports events platform
Client
Tournamy, a sports events company
Based in
Seremban, Malaysia
Engagement
August–September 2026
Our role
Design, build, payments, migration & launch

The brief

Tournamy runs community and junior sports tournaments in Malaysia. Its old WordPress shop sold team entries like products: it took a payment and a contact but no player list, and fixtures, results and tables were nowhere online. With a tournament date already fixed, Tournamy needed a platform that could run an event from registration to the final whistle, without losing the entries already paid on the old site.

What we shipped

A sports events platform on tournamy.com: registration with online payment, a live page for every tournament with tables and brackets that update themselves, and an organiser console with a scoring desk for the side of the pitch. It went live on 13 September 2026, six days before its first tournament.

Built for: Tournamy’s organising team, the teams and players who enter, and the spectators who follow the scores.

01 · Registration

Entries that arrive complete and paid.

The old shop took a payment and a contact, and nothing else. Registration now asks for what a tournament needs: team entries with their squads, individual and doubles entries, and checks as you type for jersey numbers, squad sizes, IC numbers and age limits.

Payment runs through the Billplz account Tournamy already had, inside the same flow. An entry is confirmed when Billplz confirms the payment to the platform, so a closed browser tab never loses one. Teams still settling their squad can pay first and send the player list later.

Tournamy team registration: the squad step with jersey number, name and IC fields, flagging two players given the same jersey number
Team registration, shown with sample data: the squad step catches a repeated jersey number before the entry can go through.

02 · Live scores

Every goal on spectators’ phones within seconds.

Each tournament has a live page with the matches in play, what is next, full-time results, group tables and knockout brackets, filtered by category. It updates by itself, so spectators keep it open at the pitch.

Tables and brackets work themselves out from confirmed results, and winners move into the next round without anyone redrawing a chart.

A Tournamy live page with a semi-final in play and a note that scores update automatically
A tournament’s live page, shown with sample data.

03 · Scoring desk

Scored from the side of the pitch.

Organisers set up an event in five short steps, then its categories, groups, later-round pools and knockouts. On match day the scoring desk runs on a phone: large buttons, one tap per goal, and one publish that updates every page.

Corrections keep a record of every change, and a knockout match needs a winner, on penalties if it comes to that, before the bracket moves on.

  1. Score

    The organiser taps in each goal at the pitch.

  2. Publish

    One publish updates the live page, tables and brackets.

  3. Follow

    Spectators see the score within seconds.

Two phones: the organiser’s scoring desk with a semi-final in play, and the public live page showing the same score
The scoring desk and the public live page on phones, shown with sample data.

04 · Moving off WordPress

A new platform, with nothing left behind.

Pages, past events with their results, paid orders and customer records came across from the old WordPress shop. Old addresses redirect to their new pages, so existing links and search results keep working.

Most of the first tournament’s entries had been paid on the old site, and every one came across with its payment record. A last check of the old shop before the switch confirmed nothing new had come in, and company email kept running through the domain change.

  1. Carry over

    Pages, events, paid orders and customer records.

  2. Redirect

    Old addresses point to their new pages.

  3. Switch

    The domain moves with email unaffected.

05 · Match day

136 matches, all scored live.

The first tournament on the platform was a two-day under-12 hockey tournament in Seremban. Forty-eight teams played 136 matches, and every goal, 194 in all, was published live from the scoring desk. Twelve groups fed nine second-round pools and four knockout brackets, all worked out from the results.

More than 1,700 visitors followed day one, almost five times an ordinary day, and the site handled over 740,000 requests across the weekend. About two-thirds were answered straight from the cache, so the live pages stayed quick.

When the organiser asked for the second-round pools to work differently after day one, they were rebuilt overnight and live before day two began.

Tournamy group tables and a knockout bracket with semi-final results and the final to come
Group tables and a knockout bracket, shown with sample data. The real tournament ran twelve groups, nine pools and four brackets on the same pages.

From brief to production · 2026

The delivery, and what it leaves the team with.

  1. Early August

    A prototype first

    Tournamy tried registration, live scores and the organiser console before committing.

  2. 16 August

    Go-ahead

    The build starts against a fixed tournament date. The first full build is running five days later.

  3. 29 Aug – 6 Sep

    Three rounds of feedback

    Each round built and live within about a day.

  4. 13 September

    Live on tournamy.com

    Old pages, past events and paid entries carried over; old links redirect.

  5. 19–20 September

    First tournament

    48 teams and 136 matches, every one scored live.

  6. Late September

    Improvements after the event

    Penalty shoot-outs, a gallery tool and events that archive themselves.

Live in four weeks

From go-ahead to a live platform in four weeks, six days before its first tournament.

Proven on match day

More than 1,700 visitors followed day one, almost five times an ordinary day, and the site stayed quick.

Nothing lost in the move

Entries already paid on the old site came across with their payment records, and old links still work.

Status at 4 October 2026: tournamy.com is live, with registration, payments, live scores and the organiser console in use. The registration, live-page and console screens on this page use sample data, so no real participant appears.

For your next project

Event ticketing

Registration, places and payment for events, built around your own rules.

Web app development

Software that runs in the browser, including on a phone at the side of a pitch.

Website redesign

Moving off an old site without losing pages, links or records.

Core systems

What this build is made of

These are systems we build repeatedly — each links to every other project that contains it, so you can compare implementations before deciding what you need.

Unique to this build

Built specifically for this project rather than assembled from the shelf.

  • Live scoring

    Scores keyed in at the pitch reach spectators’ phones within seconds, with no refresh.

  • Self-updating tables and brackets

    Standings, later rounds and knockout brackets work themselves out from confirmed results.

Want something built to this standard?

Tell us what you have in mind and we'll put together a functional prototype of your project — free.

Start your free prototype