"""Seed data for RTSport Coach Dashboard demo.
Preble High School (schl_001) Football athletes with realistic
injury/recovery data for the Coach Dashboard Status & Messages tabs.
Run: python seed_coach_data.py
"""
import json
import sys
import os
Paths
BUILD_DIR = os.path.dirname(os.path.dirname(os.path.abspath(file)))
BACKEND_DIR = os.path.join(BUILD_DIR, "backend")
The actual data lives in rtsport_coach_api.py as inline mock data.
This file exists for documentation and future database seeding.
ATHLETE_SUMMARY = {
"school": "Preble High School",
"school_id": "schl_001",
"sport": "Football",
"total_athletes": 50,
"athletes_with_cases": [
{
"id": "ath_001",
"name": "Jake Larson",
"status": "out",
"position": "QB",
"grade": 12,
"body_part": "Ankle - Right",
},
{
"id": "ath_002",
"name": "Marcus Johnson",
"status": "out",
"position": "LB",
"grade": 11,
"body_part": "Knee - Left (ACL)",
},
{
"id": "ath_003",
"name": "Tyler Wilson",
"status": "modified",
"position": "WR",
"grade": 10,
"body_part": "Knee",
},
{
"id": "ath_004",
"name": "Derek Lee",
"status": "modified",
"position": "RB",
"grade": 11,
"body_part": "Shoulder - Left",
},
{
"id": "ath_005",
"name": "Cameron Davis",
"status": "out",
"position": "OL",
"grade": 12,
"body_part": "Hamstring - Right",
},
{
"id": "ath_006",
"name": "Ethan Brooks",
"status": "cleared",
"position": "DB",
"grade": 11,
"body_part": "Concussion",
},
],
}
if name == "main":
output_path = os.path.join(BACKEND_DIR, "seed_data.json")
with open(output_path, "w") as f:
json.dump(ATHLETE_SUMMARY, f, indent=2)
print(f"Seed data written to {output_path}")
print(f" School: {ATHLETE_SUMMARY['school']}")
print(f" Sport: {ATHLETE_SUMMARY['sport']}")
print(f" Athletes with cases: {len(ATHLETE_SUMMARY['athletes_with_cases'])}")