import { Link } from "react-router"; import type { Route } from "./+types/admin._index"; import { findAllSports } from "~/models/sport"; import { findAllSportsSeasons } from "~/models/sports-season"; import { findAllSeasonTemplates } from "~/models/season-template"; import { Card, CardContent, CardDescription, CardHeader, CardTitle, } from "~/components/ui/card"; import { Button } from "~/components/ui/button"; import { Trophy, Calendar, FolderKanban, ArrowRight } from "lucide-react"; export async function loader() { const [sports, sportsSeasons, templates] = await Promise.all([ findAllSports(), findAllSportsSeasons(), findAllSeasonTemplates(), ]); return { stats: { sportsCount: sports.length, sportsSeasonsCount: sportsSeasons.length, templatesCount: templates.length, }, }; } export default function AdminDashboard({ loaderData }: Route.ComponentProps) { const { stats } = loaderData; return (
Manage sports, seasons, participants, and templates
Active sports in the system
Across all sports
Season templates available
Create Sports
Add sports like NFL, NBA, Golf, etc.
Create Sports Seasons
Add specific seasons for each sport
Add Participants
Add teams or players to each sports season
Create Templates
Bundle sports seasons into templates for leagues