Version 3.2.1 · released September 16, 2026

A stream overlay for OBS that you build with the mouse

Open Stream Environment is an Electron app: a drag-and-drop layout editor, a local server and an overlay page you add to OBS as a Browser Source. Alerts, chat, the donation goal, scenes, themes and 3D widgets are set up in one window — and your data and tokens stay on your computer.

  • Drag and drop, resize, layers and properties
  • Served to OBS as an ordinary web page
  • Runs locally, secrets stay encrypted

Features

Everything a stream is made of: layout, alerts, scenes, themes and chat.

A Figma-style editor

A 16:9 canvas with a live overlay preview, the widget library on the left, layers and properties on the right. Drag, resize, a snapping grid, aspect ratios from 16:9 to 9:16 and layout presets.

One alert queue

The server owns the queue, not the OBS page: Twitch, DonationAlerts and the Wheel feed one stream. Pause, "show now", merging donations from the same viewer — and the pause survives a restart.

Scenes and remotes

Full-screen scenes for start, break, just chatting, ending, the wheel and polls. Control from your phone with Web Remote, the Stream Deck plugin and OBS WebSocket; a clip and a stream marker are one button away in the toolbar.

Themes, 3D included

Material You, Orbital, Pixel Perfect, Elite and Nuclear, some with neon 3D widgets. Build your own theme in a dedicated editor: palette, panel shapes, fonts, glow and a WCAG contrast check.

Chat, bot and moderation

A Twitch chat window you can post from, a built-in bot with commands and timers, and auto-moderation: links, a banned-word list, caps and emote limits, warnings up to a ban.

Local and private

The Express and WebSocket server runs on your own machine and nothing goes out. Twitch, DonationAlerts and YouTube tokens are encrypted by the OS credential store, and settings are written atomically with backups.

Sound, rewards and read-aloud

The soundboard plays sounds and animations for channel points, a reward can fire an alert, a spoken line or a scene switch, and donation text is read out loud in the overlay (Web Speech API).

English and Russian

The control panel, overlay, scenes and wheel are translated into both languages. Switch on the fly — the choice is saved and applied in every open window.

Diagnostics that hold up

A log terminal with per-service filtering, /healthz for monitoring and a support report with no secrets in it. Backups with manual rollback, quarantine for corrupt files and a one-click updater.

Widgets you can drop on the canvas

  • Alerts
  • Donation goal
  • Twitch chat
  • Recent events
  • Counter
  • Social banner
  • Executive Hangar timer
  • Mic visualizer
  • Wheel of Fortune
  • Viewer giveaway
  • Polls
  • Custom widget

Screenshots

The editor, settings, scenes and 3D widgets.

Quick start

From npm install to an overlay in OBS in three steps.

  1. 1

    Install

    Node.js 22.12+ is required. Run npm install, then npm start — the control panel window opens.

  2. 2

    Add the overlay to OBS

    Sources → + → Browser Source: the URL http://localhost:8710/overlay/overlay.html, resolution 1920×1080, source FPS 30. The background is transparent out of the box.

  3. 3

    Build your layout

    Drag widgets in from the library, set the grid and the canvas aspect ratio, save the layout as a preset. Scenes and intermission videos live on their own tabs.

Frequently asked

What do I need to run it?

From source you need Node.js 22.12+: npm install, then npm start. For everyday use grab a ready build: a Windows x64 installer, AppImage and deb for Linux x64, a dmg for macOS on Apple Silicon. There is no prebuilt file for Intel Macs.

How do I add the overlay to OBS?

The overlay is an ordinary web page, so in OBS it is a Browser Source: the URL http://localhost:8710/overlay/overlay.html, resolution 1920×1080, source FPS 30. Turn on "Shutdown source when not visible" — hidden scenes then fall asleep completely.

Do I need Twitch and DonationAlerts accounts?

Chat is read anonymously — the channel name is enough. Alerts for follows, subscriptions, bits and donations need your own apps: a Client ID and Client Secret from dev.twitch.tv and donationalerts.com, plus authorization. Posting to chat also needs Twitch connected.

Where are the settings and the history stored?

On your computer only: config.json and local-db.json in the data directory (on Windows, %APPDATA%\Open Stream Environment). Event and chat history live in the append-only local-db.jsonl and local-db.chat.jsonl. Backups .bak.0…2 are kept next to them, and a corrupt file goes to quarantine and is restored from a copy.

Donations are not arriving — where do I look?

At the "DA" panel in the toolbar: connection state, token health, quick actions and a live log for DonationAlerts alone. The "Fetch missed" button is there too — it needs the oauth-donation-index scope, and tokens issued earlier do not get it, so the app has to be deleted and created again in the DonationAlerts dashboard.

Will the overlay show up over a full-screen game?

HUD editing and the "chat over game" window work over windowed and borderless games. An exclusive full-screen mode covers the overlay.

How much does the app cost?

Nothing. The project is open and distributed under the GPL license — the code, the builds and the change history live in the repository on GitHub.

How do I report a bug?

Open an issue in the repository on GitHub and attach the report from the "Save report" button (or GET /support-bundle) — there are no secrets in it.

Where can I read the version history?

In the repository's CHANGELOG.md. The current version is 3.2.1 (September 16, 2026).

Download Open Stream Environment

Version 3.2.1 (September 16, 2026). A Windows x64 installer, AppImage and deb for Linux x64, a dmg for macOS (Apple Silicon). Free, under the GPL license.

All the files and the version history are on GitHub Releases.

The builds are unsigned: macOS will ask you to confirm the first launch, Windows may show a SmartScreen warning. Auto-update only sees published releases.