CoachPortal

WebAI ProductsStartup

A B2B2C platform for professional coaches — hybrid structured/AI-conversational assessments, Claude-generated pre-call briefs, algorithmic client matching, scheduling, and payments in one system instead of forms, spreadsheets, and calendar links.

  • Spring Boot
  • PostgreSQL
  • Redis
  • React
  • TypeScript
  • Zustand
  • Stripe
  • Paystack

The challenge

Coaches running assessments and client work across forms, spreadsheets, and calendar tools lose time re-reading client history before every call and have no systematic way to match clients to the right coach or track what actually works across a caseload.

The approach

CoachPortal is a Spring Boot 3 API backed by PostgreSQL and Redis, with Flyway migrations and JWT auth, paired with a React/TypeScript SPA. Assessments run through a hybrid structured-plus-AI flow with live WebSocket monitoring of client sessions; on completion, a service calls the Anthropic Claude API directly to generate pre-call briefs, with a feedback service that learns per-coach preferences over time. A separate matching subsystem scores and caches client-to-coach fit and supports cross-coach referral collaboration through a coach-network agreement model. Booking runs on a per-coach weekly availability model with configurable buffers and a scheduled reminder job. Payments run through both Stripe and Paystack into a wallet/payout ledger and subscription plans. Data access is scoped per-coach — a coach-ID column, an authorization-check annotation, and an application-level pattern the code itself documents as a stand-in for real Postgres row-level security — rather than a true multi-tenant model.

What’s live

  • Hybrid structured plus AI-conversational assessments with live WebSocket monitoring
  • Claude-generated pre-call briefs with per-coach preference learning
  • Algorithmic client-coach matching plus cross-coach referral collaboration
  • Per-coach availability scheduling with booking reminders
  • Stripe and Paystack payments, wallet/payout tracking, and subscriptions
  • Coach-scoped data isolation enforced via authorization checks

Have a similar project in mind?