Back to My Work
AI & Automation Full-Stack Web App Privacy / Security

VBU Feedback Platform —
From Raw Film to Player Feedback

Two connected builds for my friend Kha and his coaching business, Volleyball University — created in a single week and working as one system: an AI pipeline that watches and files his game film automatically, and a full web app that turns his feedback into a searchable coaching library and private, per-player feedback links.

Download Case Study (PDF) Read the Story

2

Connected Projects

AI

Drafts & Understands

100%

His Data & Brand

Live

In Production

The Problem

My friend Kha runs Volleyball University, an online coaching business — and over the last week I built the two systems below to fix a pair of problems he was fighting at once. First, pure busywork: 8–10 game clips a week, each hand-renamed, dropped into the right Google Drive folder, linked, and logged into a tracking sheet for his editors. Second, and bigger — years of genuinely valuable player feedback were trapped inside individual videos, with no way to share it.

  • Hours a week lost to file admin instead of coaching
  • No way for the coaches he's training to study his method
  • No way to deliver a player their own feedback without hunting down files
  • And a real privacy line: player feedback can't be shared like public content

The coaching was there. The systems to deliver it weren't. So we built both.

The Solution — Two Connected Projects

Project 01 · Automation

The Video Pipeline

A quiet background tool on the coach's Mac. He drops one raw clip into a folder; an AI trained on volleyball watches it, names it cleanly, files it into the right Drive folder, and logs it into his editors' tracking sheet — automatically. His editors never had to learn a thing; the rows just started appearing.

Project 02 · Web App

The Feedback Platform

A full custom web app. The coach uploads a feedback clip and a correction demo; AI drafts the breakdown; he reviews and saves. It becomes a searchable library entry for the coaches he's developing — and, when tagged to a player, private feedback on that player's own link. Same clips, two audiences, one product.

AI Feature Highlight

An AI that drafts the coaching — and knows when to stay quiet

The same volleyball-trained engine powers both builds. In the pipeline it watches game film to name each clip; in the app it listens to the coach's feedback and drafts the whole breakdown — a title, the skill, the mistake, what correct looks like, and a drill to fix it. He reviews, tweaks, and saves. What used to live only in his head becomes a structured, searchable entry in seconds.

The key design choice was teaching it when to say "I don't know." On a focused, narrated clip it names the position confidently; on a wide game clip where even a person couldn't tell, it steps back and describes only what it can actually see. A confidently wrong label is worse than an honest, general one — and it's the difference between a demo and a tool someone trusts every day.

Capabilities

Project 01Video Automation

Volleyball-trained understanding

Watches the actual footage and listens to the coach's voiceover to read the skill, situation, and a clean title.

Honest naming

Names only what it can actually see — on an ambiguous game clip it steps back instead of guessing wrong.

Auto-files to Drive

Creates the dated subfolder, uploads the clip, and grabs the link — exactly the coach's manual steps, done for him.

Logs to the editors' sheet

Appends the tracking row his editors already watch, and runs quietly in the background — he never launches it.

Project 02Feedback Platform

AI-drafted breakdowns

Drafts each entry's skill, mistake, correction, and fix from the coach's voiceover — human-reviewed before saving.

Searchable coach library

Browse and filter every breakdown by skill; open one to watch both videos alongside the written analysis.

Private, revocable player links

Each player gets an unguessable no-login link showing only their own feedback — and it can be revoked and reissued in one click.

Anonymized library

Player feedback teaches coaches while structurally hiding whose it is — privacy enforced at the database level.

Own-your-data storage

Videos live in the coach's own Google Drive; the app stores only the links — no storage bill, no lock-in.

Real auth, roles & custom brand

Admin vs. view-only coach access with row-level security, and a bespoke "film room" look in the coach's own colors.

The Hard Part Was Privacy

Every piece of player feedback had to do two contradictory things at once: a player must see only their own, yet the same clip should teach coaches without ever revealing whose it is. Get that wrong and you've either broken a young player's privacy or made the library useless.

So the privacy model is the foundation, not a coat of paint. Player identity is enforced at the database level — coaches read an anonymized layer that structurally cannot expose who a breakdown belongs to — and it's backed by a suite of automated tests that try to break it on every change. Before launch, the whole thing went through an independent security & code review, verified against the live database.

Tech Stack

React + TypeScript Supabase Netlify + Functions Google Gemini Google Drive Python Row-Level Security

Have a task, or an idea that could be a product?

From a single automation to a full custom web app, I build tools that make small businesses run like big ones — and that you actually own.

Start a Project