Taking on Q3 projects (813) 331-5979
Harmony / Projects / Courtet

Case study · Sports · in production

Courtet.

A play engine for racquet clubs. Not just a court booking system: it makes sure members get a game.
Courtet runs the parts of club life that happen on the court: finding a game, filling open play, and running tournaments from sign-up to final standings. It works across pickleball, tennis, padel and the other racquet sports, on the web today with iOS and Android apps in testing. Visit the app →
FIG 01 · Identity
● LIVE
courtet.club
Get your game on.
2026
01 · The brief

Empty courts and players looking for a game.

Most club software is built around the reservation. You book a slot, and finding three other people to fill it is your problem. Meanwhile courts sit empty at the same hours members are texting around for a fourth.

Clubs also run their events in a separate pile of tools: a sign-up form, a payment link, a spreadsheet for brackets and a whiteboard on the day. None of it talks to the member list.

Courtet starts from the game, not the booking. It knows who plays, how well, and when, and puts that to work filling courts and running events in one place.

At a glance
Multi-tenant platform for clubs, players and organizers. Web app live at courtet.club and installable on any device. Native iOS and Android builds in testing.
02 · The work

One club, two views.

Players see their next game, their events and the courts near them. Club staff see members, courts and tournaments. Both read from the same live data, scoped so each club only ever sees its own.

For players

Get a game, not a slot.

  • Auto-Fill, the "Game Architect," builds balanced foursomes for open courts from the players who want to play
  • Open play drop-in sessions with mixer rounds, or pick your own game and invite people
  • Scoring and a rating that learns from every result, plus club challenge ladders
  • Tournament entry with online payment, partner requests and invitations, and electronic waivers
  • Join a club in a tap. Where it charges a joining fee, one card checkout covers an event entry and joining together
  • Public courts near you, with status kept current by the players who use them and a link to Maps
  • Connect with players nearby and chat, with Plus
  • Coming soon: a coaching network to find a local coach and message them directly
For clubs

Run the club.

  • Members, invitations and search, with venue hours and court management
  • A joining fee paid straight to the club's own Stripe account, charged or waived per invitation
  • Tournaments with divisions, resident discounts and partner matching
  • Waiver signing built in: players sign the event's waiver as they enter, and the club sees who has signed and can email a request to anyone who has not
  • Each event chooses who can enter: anyone, members (with joining at entry), or members only
  • Every entry at a glance: who is in, who has paid and who still needs a partner
  • An event-day Run tab: round robin, playoffs or single elimination, desk scoring and live standings
  • Tournament results can count toward player ratings, or stay out of them for a social event
  • Messaging to members that respects each member's opt-outs, plus a built-in support desk
Design principle
Players should never need training. Every screen leads with the next thing they are likely to do. The admin side can be dense, because directors use it every week.
03 · Tournaments

From sign-up to final standings.

Tournaments were built with real directors running real events, and every step stays in Courtet. The same entry a player made weeks earlier is the one scored on the day.

Step 01

Sign-up

Divisions, fees and waivers. Players enter, pay, and find or invite a partner.

Step 02

Brackets

A roster workspace suggests balanced brackets, and the director makes the final call.

Step 03

Run

Generated schedules, desk scoring, forfeits and standings that update as scores come in.

Step 04

Results

Final placings, and an optional posting of results to player ratings.

Why it matters
A director should not have to retype a name between the sign-up form and the bracket sheet. One record runs the whole event.
04 · Plans

Priced per court, not per member.

Playing is free, and Plus lets players find and chat with others nearby. Clubs join free and pay for court management. Annual billing on a paid plan is 11 months' price for 12. Clubs can compare plans at courtet.club/clubs.

For clubs

EventsJoin free · one tournament a month · members, messaging
$0
ClubEverything in Events · court management · your own joining fee, paid straight to the club · 4 courts, then $15/mo each
$89/mo

For players

PlayGames, open play, ratings, public courts
$0
PlusConnect: find nearby players, connect and chat
$24.99/yr
Approach
Member counts swing too much to price on, so Courtet prices the way clubs already think: by the court. A club that only runs events pays nothing to start.
05 · Privacy & standards

Each club's data stays its own.

Courtet holds member lists, contact details and payment records for many clubs at once, so isolation between them was the first thing built.

Every table enforces club-level access in the database itself, not just in the app.
No passwords to leak. Players sign in with a six-digit code sent to their email.
Players can export their data or delete their account themselves.
Content Security Policy and security headers set at the hosting layer.
Built and tested against WCAG 2.2 AA, including keyboard and screen reader flows.
Payments
Card payments run through Stripe. Courtet never sees or stores card numbers.
06 · Where to find us

Open it and play.

Courtet runs in any modern browser. Choose "Install" to keep it on your home screen. Native iOS and Android apps are in testing. Clubs interested in running on Courtet can reach us directly.

Compatible
Chrome, Safari, Edge, Firefox · iOS · Android · macOS · Windows · ChromeOS
← Previous project Mending Tempo All projects → View index