League Report
League Report WordPress plugin (league.report)
Install
The author publishes release zips, so WP-CLI can install straight from GitHub:
wp plugin install https://github.com/austinginder/league-report/releases/download/v1.1.2/league-report-v1.1.2.zipReadme
League Report
Modern league management for senior softball and similar leagues. Built for commissioners who need schedules, standings, scores, and rosters in one clean place, and for managers who update the season from a phone on the field.
Live product: league.report (also serves softballreport.org).
What it does
Each league gets a private URL (a secret slug, not a public directory listing). Visitors open that link for:
- Dashboard — today’s games, quick standings, season pulse
- Schedule & results — games by day/week with scores, postponements, and makeups
- Standings — divisions, wins/losses, and configurable ranking rules
- Teams & rosters — team pages, players, contacts
- Playoffs & champions — printable brackets and historical winners
- Locations — venues and field notes
- News, photos, files, resources — league communication and shared docs
- Private directory — member contact list (gated by role)
Logged-in league managers, roster managers, and score keepers edit right on the public site: scores, rosters, venues, news, menus, and more. No separate “admin app” for day-to-day work. WordPress wp-admin remains available for setup and advanced tasks.
Managers and AI agents can also use a profile API guide generated live from the REST routes (/me/api-docs), so tools can act with the same capabilities as a human manager.
How a league is structured
- Leagues are WordPress content with a secret slug used in the URL path.
- Seasons hold games, teams, divisions, brackets, and standings for a year or session.
- Roles are assigned per league (manager, roster manager, score keeper) so access stays scoped.
- Front-end routes use a private secret slug at the site root (
/{secret-slug}/…). Reserved words (about, contact, schedule, and similar) cannot be used as league slugs.
Requirements
- WordPress 6.5+
- PHP 8.0+
- Companion theme: leaguereport-theme (Twenty Twenty-Five child; parent must stay installed)
Install
- Install and activate this plugin (zip or clone into
wp-content/plugins/league-report/). - Install Twenty Twenty-Five, then the League Report theme, and activate the child theme.
- Create a league, set its secret slug, add a season, and assign managers.
- Share
https://yoursite.example/{secret-slug}/with the league.
Stack (for the curious)
- Custom tables for games, teams, players, venues, brackets, and related data (not only CPTs)
- REST API under
league-report/v1for inline editing - Server-rendered PHP templates; Tailwind via CDN (no front-end build step)
- Composer autoload (
LeagueReport\→src/)
License
MIT. See LICENSE.
Author
Austin Ginder · league.report · austinginder.com
Read the full README on GitHub →