The Engine Left the Browser
Electron desktop builds for Windows and Linux, a native menu bar, a single-instance lock, and NSIS plus AppImage output.
Electron, Two Months In
- Electron desktop builds:
src/electron/main.ts,preload.ts, and a README. - Hot reload in development via Vite; production packaging via electron-builder.
- Centralised config in
src/game/game.json, shared by both Electron and
electron-builder so the two can never disagree.
- Configurable window size, minimum dimensions, F11 fullscreen.
- Native menus: Game (fullscreen), View (dev tools), Help.
- Single instance lock.
- A secure preload exposing a
window.electronAPIbridge.
Scripts: electron:dev, electron:preview, electron:build.
Output Formats
Windows NSIS installer (.exe) + portable executable
Linux AppImage + .deb for Debian/UbuntuWhy It Matters Now
Mostly because of the timing. In December 2025 the engine could be wrapped in a desktop shell, could be packaged for Android via Capacitor, and could run server-authoritative physics in Node — before it had ever loaded a Quake map.
The interesting line is single instance lock. It is a two-line feature and it is the difference between an app and a tool that spawns four of itself. Everything the game needed to be a client — being launched, connecting somewhere, refusing to launch twice — was built long before there was anything to connect to.