How theavben/stagecredit works
StageCredit is an Electron stage-timing app: an operator builds and runs a show, then sends the live clock state to presenter and clock-only outputs. The control renderer owns cue and timer behavior; Electron’s main process manages windows and relays state, while the optional LAN server serves browser views and authenticated remote actions. The README documents additional rundown, show-file, customization, and logging capabilities. Some relationships below rely on README documentation because the relevant source sections were not sampled.
Main entry points: control-app.js Control panel · main.js Electron main process · server.js LAN HTTP and WebSocket · remote-app.js Phone remote
Components 18
Show operation
- Control panel
control-app.js - Cue management
control-app.js - Timer and backtiming
control-app.js - CSV rundown import
control-app.js - Show files
main.js - Settings and shortcuts
control-app.js
Clock outputs
- Presenter display
display-app.js - Clock-only view
display-app.js
LAN access
- LAN HTTP and WebSocket
server.js - Phone remote
remote-app.js
Electron runtime
- Electron main process
main.js - Control IPC bridge
preload-control.js - Display IPC bridge
preload-display.js - Local settings
control-app.js - As-run log
asrun.js
Other components
- Operator
- Bitfocus Companion
- LAN display viewer
Connections 22
- Operator → Control panel: operates
README.md - Control panel → Cue management: edits cues
README.md - Control panel → Timer and backtiming: runs clock
README.md - Control panel → CSV rundown import: imports rundown
README.md - Control panel → Show files: saves and loads
README.md - Control panel → Settings and shortcuts: configures
README.md - Control panel → Local settings: persists settings
README.md - Control panel → Control IPC bridge: uses bridge
README.md - Electron main process → Control IPC bridge: handles control IPC
preload-control.js - Electron main process → Display IPC bridge: provides display IPC
preload-display.js - Control panel → Electron main process: publishes clock state
main.js - Electron main process → Presenter display: opens output window
README.md - Electron main process → Clock-only view: opens output window
README.md - Electron main process → As-run log: appends show events
main.js - Electron main process → LAN HTTP and WebSocket: starts server
main.js - Electron main process → Control panel: dispatches remote actions
README.md - LAN HTTP and WebSocket → Presenter display: serves display view
README.md - LAN HTTP and WebSocket → Clock-only view: serves clock view
README.md - LAN display viewer → LAN HTTP and WebSocket: requests view
README.md - Phone remote → LAN HTTP and WebSocket: sends actions
remote-app.js - LAN HTTP and WebSocket → Phone remote: sends live state
README.md - Bitfocus Companion → LAN HTTP and WebSocket: calls action API
README.md