Match videos, Driver Station log analysis, and performance notes for FRC Team 4973 Gator Gears.
Published at: https://team4973.github.io/results/
results/
docs/ MkDocs source root
index.md Home page
2025 -> ../2025 Symlink (content lives here, not in docs/)
2026 -> ../2026 Symlink
2025/<event>/<match>/match.md
2026/<event>/<match>/match.md
mkdocs.yml Site configuration
requirements-docs.txt
Dockerfile
docker-compose.yml
download_matches.py Data pipeline scripts
correlate_dslogs.py
parse_dslogs.py
README.md (this file) and the Python pipeline scripts are intentionally excluded from
the published site.
docker-compose up --buildSite auto-reloads on file changes. Open http://localhost:8000.
To rebuild the image after changing requirements-docs.txt:
docker-compose up --builduv pip install --system -r requirements-docs.txt
mkdocs serveOr without installing:
uv run --with "mkdocs-material>=9.5,<10" mkdocs serveOpen http://127.0.0.1:8000.
uv run --with "mkdocs-material>=9.5,<10" mkdocs build --strictExits non-zero on any warning or broken nav reference — matches what the PR check runs.
- Create a branch, edit
match.mdfiles or add new ones. - Preview locally with Docker or
mkdocs serve. - Open a PR — GitHub Actions will run
mkdocs build --strictand report pass/fail. - Merge to
main→ Actions builds and deploys automatically. Nogh-pagesbranch involved.
- Create
2026/<event_code>/<match_key>/match.mdfollowing the structure in existing files. - Add the match to the
nav:section inmkdocs.yml. - Add a row to the event's
index.mdtable.
In the repo: Settings → Pages → Build and deployment → Source → GitHub Actions
That's it. The workflow handles the rest on every push to main.
When ready to use results.gatorgears4973.org:
- Create
docs/CNAMEcontaining exactly:results.gatorgears4973.org - Update
site_urlinmkdocs.yml:site_url: https://results.gatorgears4973.org/
- Add a DNS record at your registrar:
CNAME results.gatorgears4973.org -> team4973.github.io - GitHub will provision HTTPS automatically (usually within a few minutes).