-
released this
2026-09-04 01:52:45 +00:00 | 11 commits to main since this releaseAdded
- Every team name on the public board (courts, up-next, bracket tree and list, pool
standings, team schedules) links to that team's page at/t/<slug>/teams/<id>, which
shows their next match, court, record and schedule. Team pages by private code still work. - Court cards show the running average game time and minutes played, and a "Next up" line
with the match predicted for that court and the clock time it should be ready. - Up-next queue shows the expected clock time as well as minutes.
- Footer links to the organizer desk.
Fixed
- A team's schedule on its page shows scores from that team's point of view.
Downloads
- Every team name on the public board (courts, up-next, bracket tree and list, pool
-
released this
2026-09-04 01:52:45 +00:00 | 13 commits to main since this releaseAdded
- Bracket is drawn as a real tree: matches positioned per round with connector lines
between feeder and next match, winners in bold, live matches tagged with their court,
empty slots labelled with what fills them ("W R1.4", "L R2.1"), and the viewer's own
team highlighted along its path. Double elimination shows winners bracket, losers
bracket and finals as separate trees. - Three bracket views: full tree with sideways scrolling, "Fit to screen" (scaled to the
phone's width, the default on narrow screens), and a round-by-round list. The choice is
remembered per device. scripts/seed-demo.js --stage=bracket|doubleseeds the demo mid-bracket.
Changed
- Public state now includes
loserFeeds/loserFeedsSideon bracket matches so the
page can label upcoming slots.
Downloads
- Bracket is drawn as a real tree: matches positioned per round with connector lines
-
released this
2026-09-03 21:31:21 +00:00 | 16 commits to main since this releaseFirst deployed release. Courtside now runs as a managed stack rather than a
docker compose upon someone's laptop.Added
docker-compose.komodo.yml— deployment compose for a host already behind a shared Cloudflare Tunnel. Publishes a host port instead of bundling acloudflaredsidecar, so there is one tunnel to operate rather than one per app.- Version reporting:
server/version.jsreads the version frompackage.json;GET /healthzreturns it asversion, and the footer rendersCourtside v<x.y.z>. CHANGELOG.md.- Push-to-deploy: a push to
mainrebuilds and redeploys the stack automatically.
Notes
- The original
docker-compose.yml(app + its owncloudflared) is unchanged and remains the right choice for a standalone install, perdocs/DEPLOY.md. - No database migration. State is JSON documents in SQLite created with
CREATE TABLE IF NOT EXISTS; upgrading is a container replacement.
Full changelog: CHANGELOG.md
Downloads