Teamz Tennis

The marketplace connecting the tennis world

Teamz Tennis

Context

Teamz connects tennis organizations with players and coaches: recruitment listings, applications, messaging, tournaments. The first version, launched two years ago, matched clubs and players. The V2 currently in development opens the platform to padel, coach profiles and new kinds of organizations: hotels, resorts, federations.

Scope

Fullstack development over the long run: the V1 two years ago, now the V2 with the API migration from Hono RPC to tRPC, coach profiles, padel and the freemium plans. Plus Stripe payments and a security audit along the way.

Product decisions

  • V2 designed as a widening of the domain: padel, coach profiles, and organizations beyond clubs (hotels, resorts, federations)
  • API migration from Hono RPC to tRPC v11, written down as a design spec before any code

Highlights

  • Stripe freemium plans, checkout and billing portal, signed webhooks (Stripe, Clerk, StreamChat)
  • Real-time messaging with Stream Chat
  • Full admin area: managing players, coaches and organizations, reports and moderation, supporting a managed offer where the Teamz team runs the search for coaches and players on behalf of organizations
  • V2 roadmap driven milestone by milestone on Linear (padel, coach, freemium, back office)
  • 10 tRPC routers, ~25 web routes, preview deployments behind a dedicated proxy
  • End-to-end type safety: the web app only imports the emitted API types

Stack

TypeScript
Bun
React 19
tRPC
Hono
Drizzle
Neon
Stripe
Fly.io
Visit the project arrow icon