How joao-salomao/replaybr-extended works
ReplayBR Extended is a Chrome extension for finding replays by court, date, and hour, then producing one downloadable MP4 per selected play, with two cameras side by side when available. The UI loads court options and replay listings, lets users select plays, and invokes the rendering pipeline; completed clips can be downloaded individually or together as a ZIP. The graph includes documented single-camera and camera-order behavior. Some UI wiring and the court-list extraction details are unsampled, so those relationships are shown only where the excerpts or README support them.
Main entry points: app.ts Replay UI · render.ts Render coordinator · fieldsExtract.ts Site court loader · background.ts Tab launcher
Components 17
Extension interface
- Tab launcher
src/background.ts - Replay UI
src/ui/app.ts - Court selector
src/ui/select.ts - Option filtering
src/ui/filter.ts
Replay discovery
- Local date
src/dates.ts - Court catalog
src/fields.ts - Site court loader
src/fieldsExtract.ts - Replay API client
src/api.ts
Clip processing
- Render coordinator
src/render.ts - MP4 dimensions
src/mp4.ts - Side-by-side encoder
src/encoder.ts - FFmpeg loader
src/ui/loadFfmpeg.ts
Downloads and packaging
- Camera downloads
src/download.ts - ZIP builder
src/zip.ts
Other components
- Extension user
- ReplayBR site and API
- FFmpeg WASM
Connections 22
- Extension user → Tab launcher: opens extension
README.md - Tab launcher → Replay UI: opens tab
README.md - Extension user → Replay UI: selects plays
README.md - Replay UI → Court selector: uses selector
src/ui/app.ts - Court selector → Option filtering: filters options
src/ui/select.ts - Replay UI → Local date: sets date
src/ui/app.ts - Replay UI → Site court loader: loads courts
src/ui/app.ts - Site court loader → Court catalog: falls back to
README.md - Site court loader → ReplayBR site and API: reads court map
README.md - Replay UI → Court catalog: resolves court
src/ui/app.ts - Replay UI → Replay API client: requests replays
src/ui/app.ts - Replay API client → ReplayBR site and API: fetches listings
src/api.ts - Replay UI → Render coordinator: renders selection
src/ui/app.ts - Render coordinator → Camera downloads: downloads cameras
src/render.ts - Camera downloads → ReplayBR site and API: fetches camera files
README.md - Render coordinator → MP4 dimensions: probes dimensions
src/render.ts - Render coordinator → Side-by-side encoder: encodes clips
src/render.ts - Replay UI → FFmpeg loader: loads encoder
src/ui/app.ts - FFmpeg loader → FFmpeg WASM: loads WASM core
src/ui/loadFfmpeg.ts - Replay UI → ZIP builder: builds archive
src/ui/app.ts - Replay UI → Extension user: offers clip downloads
README.md - Replay UI → Extension user: offers ZIP download
README.md