Sunburn Desktop Client with per-app audio capture
  • JavaScript 75.5%
  • HTML 24.5%
Find a file
2026-10-07 23:00:46 +00:00
.forgejo/workflows Cleanup: nav handler, update banner IPC, updater setup, release swap, docs (#12) 2026-10-03 12:01:25 -04:00
assets Close to tray, single instance, themed title bar overlay (#18) 2026-10-07 16:43:25 -04:00
build Ship a 512px app icon so the launcher icon resolves (#20) 2026-10-07 17:04:19 -04:00
src Merge remote-tracking branch 'origin/master' into feat/tray-titlebar 2026-10-07 17:03:46 -04:00
test Add link-browser setting (#14) (#15) 2026-10-04 21:01:32 -04:00
.gitignore Cleanup: nav handler, update banner IPC, updater setup, release swap, docs (#12) 2026-10-03 12:01:25 -04:00
Dockerfile.release fix: Windows screen-share audio + CI release on push to master 2026-06-28 21:51:07 -04:00
main.js Clear the web cache when the desktop version changes (#22) 2026-10-07 18:54:22 -04:00
package-lock.json chore(release): v1.5.3 [skip ci] 2026-10-07 23:00:46 +00:00
package.json chore(release): v1.5.3 [skip ci] 2026-10-07 23:00:46 +00:00
preload.js Close to tray, single instance, themed title bar overlay (#18) 2026-10-07 16:43:25 -04:00
README.md Add link-browser setting (#14) (#15) 2026-10-04 21:01:32 -04:00

Sunburn Desktop

Desktop client for Sunburn with per-app audio capture for screen sharing.

Features

  • Full voice/video/screen sharing (Chromium WebRTC)
  • Per-app audio capture — share audio from a specific application, not your entire system
    • Linux: PipeWire integration
    • Windows: WASAPI per-process capture
  • Custom screen share picker with audio source selection
  • Auto-updates — notifies you when a new version is available
  • Persistent login sessions
  • Choose which browser opens links (Settings → Links)

Install

Linux (AppImage)

Download the latest AppImage from Releases.

chmod +x Sunburn-*.AppImage
./Sunburn-*.AppImage

To add to your app launcher:

# Move to a permanent location
mkdir -p ~/.local/bin
mv Sunburn-*.AppImage ~/.local/bin/sunburn

Or install AppImageLauncher for automatic desktop integration:

# Arch Linux
yay -S appimagelauncher

Then double-click the AppImage and it will offer to integrate into your app menu.

Windows

Download Sunburn-Setup-*.exe from Releases and run the installer.

Note: Per-app audio capture requires Windows 10 Build 2004 (May 2020) or later.

Updates

The app checks for updates automatically every 30 minutes. When an update is available, a banner appears at the top of the app. Click "Restart to update" to apply it.

Development

npm install
npm start

Building

# Linux AppImage
npm run build:linux

# Windows installer (cross-compile via Wine)
npm run build:win

# Both
npm run build:all

Releasing

Releases are automated by CI (.forgejo/workflows/release.yml). To ship an update:

  1. Merge to master. (Bump version in package.json only for a minor/major release.)

On push to master the runner builds both platforms and publishes them to the rolling latest Forgejo release; the auto-updater picks it up automatically. Every push publishes, patch-bumping the version of the current latest release. Requires a RELEASE_TOKEN repo secret with release-write access.

Per-App Audio Capture

When screen sharing, the app shows a custom picker with two sections:

  1. Screens/Windows — select what to share visually
  2. Audio Sources — select which app's audio to include

How it works

  • Linux: Creates a PipeWire loopback that routes the selected app's audio output to a virtual capture source
  • Windows: Uses WASAPI application-loopback to capture audio from a specific process ID