The challenge

The original product could support one club, but that architecture could not simply be copied into a reliable platform for many clubs. Each organization needed its own data boundary, public presence, officer workspace, member experience, and administrative controls.

The redesign

The application was reworked around a tenant-aware data model using Next.js and Supabase/Postgres. Club identity became part of the core architecture rather than an interface-level filter.

The migration covered 33 club-scoped tables, with tenant isolation enforced at the database layer through row-level access policies. Public marketing, club operations, member workflows, and platform administration were separated so each audience receives only the controls and information relevant to its role.

Implementation discipline

  • Mapped where club context had to exist across data, authentication, navigation, and workflows.
  • Reworked the data model and application paths for multiple independent clubs.
  • Reviewed authorization behavior before expanding pilot access and recorded issues for correction.
  • Kept product messaging aligned to the current early-access stage rather than implying proven scale.

What this demonstrates

Multi-tenancy is not a cosmetic feature. It changes the operating model of a product: who owns information, where decisions live, which workflows are shared, and which boundaries must never be crossed. Addressing that architecture before growth reduces avoidable complexity later.