Standalone apps · Docker · Source

Download DisplayGrid

Native installers for every platform. No Node.js, no terminal — just download and run. Apps keep themselves updated automatically.

Detected your OS
Windows

Windows 10 or later · x64 · NSIS installer · auto-updates

Download .exe
macOS

macOS 11 or later · Intel & Apple Silicon (Universal)

Download .dmg
Linux

Ubuntu, Debian, Fedora and more · x64 AppImage (auto-updates)

Download .AppImage

Debian/Ubuntu: .deb package

Raspberry Pi

Pi 4B & Pi 5 · run the server on any machine, use the Pi as a display

Setup guide
Windows

Windows 10 or later · x64 · NSIS installer · silent auto-updates

Download .exe
macOS

macOS 11 or later · Intel & Apple Silicon (Universal)

Download .dmg
Linux

Ubuntu, Debian, Fedora and more · x64 AppImage (auto-updates)

Download .AppImage

Debian/Ubuntu: .deb package

Raspberry Pi

Pi 4B & Pi 5 · fullscreen kiosk with Chromium — no app install needed

Setup guide

Debian packages and all previous versions live on the GitHub releases page. Prefer the terminal? Run from source.

Server via Docker

One command, whole server

The container applies database migrations on boot and keeps all state — database, uploads, auth secret — in a single volume.

docker run -d --name displaygrid \
  -p 3000:3000 -p 3001:3001 \
  -v displaygrid-data:/data \
  ghcr.io/joemighty/displaygrid:latest

Dashboard at http://<host>:3000, WebSocket on 3001. Or clone the repo and docker compose up -dcompose.yaml includes an optional HTTPS proxy (--profile tls).

Setup guide

Up and running in minutes

You only need the Server App on one machine. Install the Kiosk App on every display device.

Server App
Install once on your server machine (PC, NUC, Pi)
  1. Download and install

    Run the installer for your platform. On Linux, make the AppImage executable: chmod +x DisplayGrid-Server-x86_64.AppImage then double-click it — or install the .deb package on Debian/Ubuntu.

  2. Dashboard opens automatically

    The dashboard opens in a native window once the server is ready (usually within 10 seconds). A DisplayGrid icon also appears in your system tray — on macOS it stays in the dock too.

  3. Complete the setup wizard

    The dashboard window opens at http://localhost:5555. DisplayGrid creates its database automatically on first launch — just complete the setup wizard to create your admin account. Re-open the window anytime from the tray icon or macOS dock.

  4. Add your first screen

    Go to Screens, click “+ New Screen”, give it a name (and optionally a custom token like lobby). Note the screen token shown in the token modal.

Kiosk App
Install on each display device (PC, Pi, TV stick)
  1. Download and install on each display device

    On Linux, run chmod +x DisplayGrid-Kiosk-x86_64.AppImage before launching, or install the .deb package. For Raspberry Pi displays, follow the Chromium kiosk guide instead — no app install needed.

  2. Edit the config file

    On first launch, a config file is created at %APPDATA%\@displaygrid\electron-kiosk\kiosk-config.json (Windows) or ~/.config/@displaygrid/electron-kiosk/kiosk-config.json (Linux). Edit it with your server’s IP and screen token:

    {
      "apiBase": "http://192.168.1.10:3000",
      "wsBase":  "ws://192.168.1.10:3001",
      "screenToken": "lobby"
    }
  3. Launch the app

    The kiosk opens fullscreen and connects to your server automatically. If the token matches a screen in the dashboard, it starts playing the assigned playlist immediately.

  4. Auto-start on boot (optional)

    Windows: add a shortcut to shell:startup. Linux/Pi: add to your desktop session autostart or use a systemd --user service. Emergency quit: hold Ctrl+Alt+Q. Updates download in the background and apply on next launch — never mid-show.