Daria portrait
Daria Anokhina currently available

Courtflow

Enterprise SaaS for Tennis Club Management

My role Product Designer
Duration 2 weeks
Platform Web
Tools Figma
Courtflow dashboard screen

Courtflow dashboard screen

I designed CourtFlow around the day-to-day work of club managers and front desk staff. The dashboard prioritizes the information and actions they rely on most, helping them start their day without digging through multiple pages.

Three principles shaped every design decision

Primary User

Designed around the Club Manager / front desk staff

Court-Centric Structure

Scheduling is organized around court availability

Workflow-First

Core tasks are completed without leaving the current workspace

Schedule

Courts became the foundation of the scheduling experience. Each column represents a court, allowing managers to understand availability, bookings, and lessons at a glance.

Courtflow schedule screen

Courtflow schedule screen

  • Built the schedule around court availability rather than individual reservations, making it scalable for clubs with different numbers of courts.
  • Used color to distinguish bookings from lessons for faster visual scanning.
  • Started the booking flow directly from available time slots, keeping scheduling and booking in a single workspace.

Booking Experience

Creating a booking is one of the most frequent tasks in any tennis club. Every reservation remains accessible from the schedule, allowing staff to review details, edit information, or cancel the booking when plans change.

Courtflow booking flow screen

Courtflow booking flow screen

Schedule
  • Kept booking management within the schedule, allowing staff to create, review, edit, and cancel reservations without losing context.
  • Pre-filled court and time based on the selected time slot, reducing manual input during booking creation.
  • Allowed new members to be added without leaving the booking flow, preventing interruptions during front desk operations.
  • Made every booking directly accessible from the schedule, allowing reservation details to be reviewed or updated in a single click.

Court Management

Court availability is at the core of the scheduling experience, so I designed court management to be accessible from both the Schedule and the Courts section. Staff can temporarily block courts for maintenance, weather, private events, or other operational needs while keeping availability synchronized across the platform.

Block court

Block court

Move booking

Move booking

Court closed

Court closed

  • Displayed affected bookings before confirming the block, allowing staff to understand the impact before making changes.
  • Represented blocked courts directly on the schedule, making availability changes immediately visible.
  • Supported both full-day and custom-hour blocks to accommodate different operational scenarios.

Additional screens

Court availability is at the core of the scheduling experience, so I designed court management to be accessible from both the Schedule and the Courts section. Staff can temporarily block courts for maintenance, weather, private events, or other operational needs while keeping availability synchronized across the platform.

Courtflow bookings screen

Courtflow bookings screen

Core components

Reusable components and consistent interaction patterns helped create a scalable interface that remains cohesive as new features are introduced.

Courtflow core components screen

Courtflow core components screen

Take a look at two more projects

If you want to keep exploring, these are two other projects I worked on.