2026 · Community

PIP Hub — a home for Calgary's pickleball community.

A full-stack platform that turns session scheduling, roster management, and matchup planning into something people actually enjoy using.

The Challenge

PIP is a tight-knit pickleball community in Calgary that runs regular play sessions. Before we came in, everything ran manually — announcements in a group chat, sign-ups in a spreadsheet, court assignments on a whiteboard. As the group grew, the cracks showed up fast. People missed spots, courts weren't balanced, and the organizers were spending more time coordinating than playing. They needed something purpose-built — but nothing on the market fit a community this specific.

The Approach

We didn't want to build a generic booking tool with a pickleball skin on it. We spent time understanding how sessions actually run — the skill-level dynamics, the credit system the organizers had been tracking by hand, the way waitlists needed to work when someone dropped out last minute. That understanding shaped every decision. Two distinct experiences: a warm player-facing app and a control-focused admin dashboard.

Process

  1. 1

    Discovery & Scoping

    Mapped out the real workflows — how sessions are created, how credits flow, what happens when a player cancels 10 minutes before start vs. two days out.

  2. 2

    Architecture & Data Model

    Designed the schema around the credit ledger and registration lifecycle. Row-level security from day one so the auth model wouldn't need a rewrite later.

  3. 3

    Iterative Build

    Shipped features in usable chunks — session browsing first, then registration, credits, waitlist, and finally the matchup engine. Each piece was tested with real players before moving on.

  4. 4

    Polish & Theming

    Developed a full design-token system with swappable themes, refined the mobile experience, and added automated email reminders to reduce no-shows.

What We Built

  • Session Booking

    Players browse upcoming sessions, see who's registered, and grab a spot with one tap. Configurable courts, capacity limits, and cancellation windows keep things fair.

  • Credit System

    A built-in ledger tracks every transaction — joins, cancellations, refunds, admin adjustments. Players always know their balance, and organizers have a clean paper trail.

  • Smart Waitlist

    When a session fills up, players join a FIFO queue. If someone cancels, the next person is promoted automatically — credits deducted, notification sent, no admin intervention needed.

  • Matchup Engine

    A round-robin algorithm generates balanced court assignments across skill groups. It tracks partner pairings, minimizes repeats, and flags fairness issues before they hit the court.

  • Email Notifications

    Automated confirmations, reminders, and admin updates keep everyone in the loop. Players toggle their preferences, so nobody gets spammed.

  • Admin Dashboard

    Full audit logs, member management, attendance tracking, and credit adjustments — everything an organizer needs to run sessions without the spreadsheet chaos.

Reflection

The matchup engine was the most technically satisfying piece. Generating round-robin schedules that balance play time, avoid repeated partnerships, and handle skill-group crossovers is a real constraint-satisfaction problem — the kind that's easy to get wrong and hard to notice until players start complaining. The design side was equally rewarding. PIP Hub needed to feel approachable to people who just want to play pickleball, not manage software. The warm palette, the one-tap registration flow — all of that was intentional. We also invested early in a proper theming system with design tokens and swappable palettes, knowing the community would want seasonal themes.

"We went from managing everything in a group chat to having a system that just handles it. The matchup planner alone saved us hours every week."

— PIP Community Organizer

Stack

Next.js 16TypeScriptSupabasePostgreSQLRow-Level SecurityVercelResend