Local-first signage Raspberry Pi appliances

Digital signage that keeps playing.

Beam combines a real operations dashboard with reusable media, playlists, screen health, manual publishing, and resilient fullscreen playback on Raspberry Pi.

  • Next.js
  • TypeScript
  • Raspberry Pi
  • VLC playback

Operations before ornament

The screen is the contract.

Beam is built around one practical promise: local playback survives ordinary failures, while the operator can see exactly what is playing, what changed, and what needs attention.

01

Playback comes first

Each Pi reads a local playlist and cached media, launches fullscreen, and recovers without waiting for the dashboard or network.

02

Publishing stays intentional

Uploads and playlist edits save first. A deliberate publish action sends the approved state to the selected screen.

03

Status stays honest

Heartbeat, current-video, playlist sync, temperature, throttle, uptime, and service evidence distinguish healthy, stale, and unavailable states.

Operations console

Five views for the work that matters

What’s Playing, Library, Playlists, Screens, and Scheduling keep routine operations visible without turning the pilot into an enterprise control plane.

One source of operational truthMedia · Playlists · Screens · Schedules · Evidence
  • Reusable media and explicit playlist assignment
  • Screen inventory, diagnostics, and recovery controls
  • Current-video evidence and live screen view
  • Per-screen landscape or left/right portrait playback
  • Simple business-hours scheduling

The controlled publish path

Save locally. Publish deliberately.

  1. 01
    Add media

    Upload and prepare a playback-safe asset.

  2. 02
    Choose a playlist

    Assignment is always explicit.

  3. 03
    Arrange playback

    Save order and settings locally.

  4. 04
    Select a screen

    Confirm the intended destination.

  5. 05
    Publish

    Send playlist and required media.

  6. 06
    Verify

    Read playback and sync evidence back.

Built to recover boringly well

A missing network should not make a blank TV.

Beam keeps cached media and playlist state on every appliance, standardizes every device in the fleet against a Golden Master, and treats service restart, reboot, power loss, and network loss as normal recovery cases. Separate AWS Pre-production and Production environments support controlled promotion, but neither can replace the local playback contract.