Serve local files over HTTP directly inside OBS Studio.
Perfect for HTML/CSS/JS overlays, dashboards, widgets, and any Browser Source that needs local assets no external server required.
- 🖥️ Built‑in local HTTP server running inside OBS
- 📁 Serves any folder as a document root
- 🌐 Browser Source friendly (HTML/CSS/JS/images/fonts/JSON)
- 🧭 Local-only by default (127.0.0.1)
- ⚙️ Configurable port (auto‑rebinding if busy)
- 🔄 One‑click Browser Source refresh (cache bust)
- 🎯 Create/Update Browser Source in current scene
- 💾 Persistent settings (doc root + port)
- 🧩 Clean, OBS‑style dock/panel UI
- Download the latest Windows installer from the Releases page:
- Releases → Assets → local-webserver-setup.exe
- Run the installer and choose your OBS Studio folder.
The installer places:
local-webserver.dll→OBS\obs-plugins\64bit\- locales →
OBS\data\obs-plugins\local-webserver\locale\
- Download the
.zipfrom Releases. - Copy:
into your OBS installation directory.
obs-plugins/64bit/local-webserver.dll data/obs-plugins/local-webserver/locale/
Not packaged yet.
If you want to help test builds, open an issue or ping me on Discord.
- Open OBS
- Go to Tools → Local Webserver
- Click Browse… and select a folder to serve
- Choose a port (default is fine)
- Click Start / Restart
- Click Create Browser Source in current scene
Your folder is now available at:
http://127.0.0.1:<port>/
Example:
http://127.0.0.1:8080/
Point any Browser Source to that URL and it will load your local overlay.
- ✅ Custom HTML overlays
- ✅ Stream dashboards / control panels
- ✅ Local widget dev (hot reload by refresh)
- ✅ Serving JSON/images/fonts to overlays
- ✅ Testing web overlays without hosting
Use the Refresh Browser Source button in the dock to force a reload.
This is helpful after editing local files, especially when OBS caches the page.
The plugin stores:
- Document root (folder being served)
- Port
If the chosen port is unavailable, the server automatically binds to a free port and updates the UI.
- OBS Studio build environment (same as other OBS plugins)
- Qt 6
- CMake 3.28+
cmake --preset windows-x64
cmake --build --preset windows-x64 --config RelWithDebInfoArtifacts will be staged under:
release/RelWithDebInfo/local-webserver/
Whatever you pick as Document Root becomes / on the server.
Example:
my-overlay/
index.html
style.css
app.js
assets/
logo.png
Loads as:
http://127.0.0.1:8080/index.html
http://127.0.0.1:8080/style.css
http://127.0.0.1:8080/app.js
http://127.0.0.1:8080/assets/logo.png
Server says “Failed to start”
- Another app is using the port.
Try another port or let the plugin auto‑rebind.
Browser Source is blank
- Make sure
index.htmlexists in the chosen folder. - Test in a normal browser:
http://127.0.0.1:<port>/
Refresh doesn’t seem to update
- Some overlays cache aggressively.
Try refreshing twice or add cache‑busting query strings in your overlay if needed.
- GitHub Issues: use this repo’s Issues tab
- Discord: https://discord.gg/2yD6B2PTuQ
If this plugin helps your stream, consider supporting future updates:
- Ko‑fi: https://ko-fi.com/mmltech
- PayPal: https://paypal.me/mmlTools
Any support keeps development moving. Thanks! ❤️
MIT License free to use, modify, and share.
If you build something cool with it, I’d love to see it!