Skip to content

Callsheet

shipped

Game-day call sheet builder for high school football coaching staffs — deployed at callsheet.coach.

Next.js 15 TypeScript PostgreSQL Drizzle ORM Vercel

Callsheet is a tool where coaches can build, organize, and print a game-ready call sheet faster than spreadsheets — with their entire playbook, roster, and scouting connected in one place.

I built this because I know the chaos coaching staffs deal with on game day. Spreadsheets everywhere, notes scribbled on paper, no single source of truth. Callsheet fixes that.

Features

  • Playbook — Full CRUD with polymorphic phases (offense, defense, special teams), tag system, bulk CSV import
  • Call Sheets — Build and organize game-day sheets from your playbook
  • Scouting — Opponent tendency tracking with reports
  • Smart Planning — Auto-generate call sheets from scouting data
  • Auth & Teams — Email/password signup, team invitations, role-based access control
  • Dark Mode — Press boxes and film rooms are dark. The app should be too.

Tech Stack

LayerTechnology
FrameworkNext.js 15 (App Router, Turbopack)
DatabasePostgreSQL via Neon (serverless)
ORMDrizzle ORM with RLS
Authbetter-auth (email/password + organizations)
UIshadcn/ui + Tailwind CSS v4
MonorepoTurborepo with Bun
TestingVitest + Playwright
CI/CDGitHub Actions → Vercel

Architecture

Turborepo monorepo with three packages: apps/web (Next.js), packages/db (Drizzle ORM + schema + migrations), and packages/ui (shared shadcn/ui components). RLS on all tenant-scoped tables for team isolation.

Status

Currently in Phase 10 (RBAC for coaching staff roles). Phases 1-9 complete, including full scouting reports with 14 UAT tests verified passing. Deployed and live at callsheet.coach.