Stage display, reimagined for live production.
A cross-platform (Windows + macOS) ProPresenter-style stage display with a GrandMA2-style cue list: design layouts in a WYSIWYG editor, drive multiple screens and NDI outputs, and fire them live from MIDI, OSC, Art-Net, sACN or SMPTE timecode — then mirror any screen to a browser on the LAN.
This repository is the public download host for Stage Monitor. The application source is maintained privately; only the installable builds are published here.
➡️ Grab the latest version from the Releases page.
| Platform | File | Notes |
|---|---|---|
| Windows | Stage Monitor-Setup-<version>.exe |
NSIS installer |
| macOS (Apple Silicon) | Stage Monitor-<version>-arm64.dmg |
arm64 / Apple Silicon |
Website, full guide and screenshots: stagemonitor.stagerig.com.br
- WYSIWYG editor — design every screen on a live per-screen canvas; what you see is exactly what goes out.
- GrandMA2-style cue list — program the show as named cue lists with decimal numbering, crossfades, trigger modes and per-cue settings. Store a look as a cue and dissolve it in; insert decimal cues, renumber, chase with Follow / Time triggers.
- Multiple independent screens — each screen is its own output with its own layout and content.
- NDI & physical outputs — send each screen to a fullscreen/windowed display and to multiple NDI® sources, with per-output control.
- Clean crossfades — smooth dissolves between looks with no black dip, even over NDI.
- Big readable timers — countdown, countdown-to-time, count-up / elapsed, time-of-day and SMPTE, with play / pause / reset and overrun.
- Stage messages — flash messages to the stage straight from the cue list.
- Protocol I/O — map MIDI, OSC, Art-Net and sACN signals to a command or cue.
- SMPTE timecode — chase LTC & MTC, record per-song timecode shows, or be the master and send MTC/LTC to other gear. Includes real SMPTE bars, ramps, an academy-leader countdown, an AV-sync test and an adjustable test card.
- LAN web-viewer — mirror any screen to any browser on the network: an exact, live, read-only pixel mirror over MJPEG, with an optional PIN.
- Electron 42 — cross-platform desktop shell with multiple windows (editor, screen outputs, config, control, test patterns, web-viewer, timecode)
- React 19 + TypeScript 6 — UI
- electron-vite 5 + Vite 7 — build & bundling
- Zustand — state management (with undo)
- Konva + react-konva — the WYSIWYG canvas
- koffi (FFI) → NDI 6 runtime — native video + audio NDI output
- @julusian/midi — MIDI I/O
- Pure
node:dgram(UDP) — OSC, Art-Net and sACN implemented from scratch (no libs) - Web Audio API — LTC generation; LTC/MTC for SMPTE timecode in/out
node:http+ MJPEG — the LAN web-viewer server- electron-builder 25 — packaging: NSIS installer (Windows), DMG + ZIP (macOS), AppImage (Linux); native addons shipped unpacked from the asar
Website (stagemonitor.stagerig.com.br)
- Astro 6 — static site generator
- Tailwind CSS 4 — styling (via the
@tailwindcss/viteplugin) @astrojs/mdx— MDX content (the guide pages) and@astrojs/sitemap— sitemap- TypeScript, Node 22+; a prebuild step pulls the latest GitHub release before each build
- Deployed to Cloudflare Workers (static assets) via Wrangler
- 🌐 Website & guide — stagemonitor.stagerig.com.br
- ⬇️ Download — stagemonitor.stagerig.com.br/download
- 📖 Guide — stagemonitor.stagerig.com.br/guide
- 📦 All releases — Releases
NDI® is a registered trademark of Vizrt NDI AB. ProPresenter, GrandMA2 and Resolume are trademarks of their respective owners and are referenced here only to describe Stage Monitor's design and compatibility. Stage Monitor is not affiliated with or endorsed by any of them.
© André Nogueira · @andrenogrib · StageRig @stagerigbr