beatsaber-overlay/README.md
2026-04-11 16:19:48 -07:00

1.7 KiB

Beat Saber Overlay

Simple Beat Saber stream overlay for twitch.tv/iza_k
Requires BeatSaberPlus

Preview

Setup

Install Deno and serve the overlay over HTTP (see below).

The browser overlay source is now TypeScript (index.ts) and is bundled to index.js with deno task build (run automatically by deno task serve).

The server must know where Beat Saber Plus stores ChatRequest/Database.json. It then serves that file as ChatRequest.json and database.json (same data) over HTTP—no symlink.

Easiest: copy chat-request-database.path.example to chat-request-database.path in this repo and put one line: the absolute path to Database.json (gitignored, so it stays on your machine).

Or set the environment variable (overrides the path file):

$env:CHAT_REQUEST_DATABASE = "C:\Users\pleb\BSManager\BSInstances\1.40.8\UserData\BeatSaberPlus\ChatRequest\Database.json"
deno task serve

Then open http://127.0.0.1:8080/index.html (use the same host and port the terminal prints). Set PORT if needed. In OBS, use that URL for the browser source.

If neither the path file nor CHAT_REQUEST_DATABASE is set, the overlay only finds a queue if you place a ChatRequest.json copy in the repo folder.

Usage

Clone the repo and run deno task serve as above.

Development tasks

  • deno task build - bundle/check index.ts for browser output (index.js)
  • deno task serve - build, then serve index.html and JSON files
  • deno task dev - watch and rebuild index.js when index.ts changes