ProdDash: new project with reference forks of ProdCom Listener and BandLineupDisplay

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Waters Church
2026-08-30 10:09:41 -04:00
co-authored by Claude Fable 5
commit 150797389e
45 changed files with 18299 additions and 0 deletions
+38
View File
@@ -0,0 +1,38 @@
# Band Lineup
Stage lineup photos with mic/pack labels, for the backstage screen. Electron, packaged for Windows.
It also carries the ProPresenter **Now / Next** feature, which exists in two forms that share
one engine:
```
BandLineupDisplay/
├── main.js, preload.js, index.html, renderer.js, styles.css the Band Lineup app
├── propresenter-core/ the shared ProPresenter 7/20 client — no deps, no Electron
└── propresenter-app/ the standalone Now/Next display + the page the band app serves
```
| Want | Do this |
| --- | --- |
| Run the backstage app | `npm start` |
| Show Now/Next on screens around the building | In the app: **People** panel → **Studio Displays** → **Turn On**, then bookmark the address it gives you |
| Host the display without the Band Lineup app | `cd propresenter-app && node server.js` |
| Build the Windows installer | `npm run dist` |
`propresenter-core` is the single home for every ProPresenter quirk — runtime route discovery on
PP20, arrangement-expanded slide totals, uuid-then-name matching for the live item. Fix a quirk
there and both programs get it.
Details on the display, the bookmark that survives DHCP, and the Windows firewall gotcha:
[propresenter-app/README.md](propresenter-app/README.md).
## Testing without ProPresenter
`tmp/pp-mock.js` is a mock of the ProPresenter network API that advances slides on a timer,
including the tricky case where an arrangement repeats a section (43 cues over 41 master slides):
```bash
node tmp/pp-mock.js 1599
```
Then point either program at `127.0.0.1` port `1599`.