You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+2-60Lines changed: 2 additions & 60 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -211,71 +211,13 @@ When a broadcast is live, a bar appears at the top of the page. Click **Join** t
211
211
-**─** — minimize the panel without leaving the broadcast
212
212
-**✕** — leave the broadcast entirely
213
213
214
-
### Audio
215
-
216
-
Instbyte captures your microphone alongside the screen share by default. Viewers are muted on join — click 🔇 to unmute.
217
-
218
-
To share audio playing on your screen (videos, music, system sounds), select a **browser tab** in the screen picker and enable **Share tab audio**. Window and full-screen capture do not carry system audio — this is a browser limitation.
219
-
220
-
### HTTPS requirement
221
-
222
-
Broadcasting uses `getDisplayMedia` which browsers only allow on secure connections. This means:
223
-
224
-
-**localhost** — always works. If you run `npx instbyte` on your own machine and open `http://localhost:3000`, you can broadcast.
225
-
-**LAN via HTTP** — viewers can watch but cannot broadcast themselves. Only the person running the server can broadcast.
226
-
-**LAN via HTTPS** — everyone on the network can broadcast.
227
-
228
-
### Enabling broadcast for everyone on your network
229
-
230
-
To let any device on your LAN broadcast, run Caddy alongside Instbyte. Caddy adds HTTPS automatically — no certificate setup needed.
231
-
232
-
**Install Caddy:**
233
-
```bash
234
-
# macOS
235
-
brew install caddy
236
-
237
-
# Ubuntu / Debian
238
-
sudo apt install caddy
239
-
```
240
-
241
-
**Run alongside Instbyte:**
242
-
```bash
243
-
# Terminal 1
244
-
npx instbyte
245
-
246
-
# Terminal 2 — replace with your machine's local IP
Everyone on the network opens `https://192.168.1.x` instead of the plain HTTP URL. The first visit on each device will show a certificate warning — click **Advanced → Proceed**. After that, full HTTPS, anyone can broadcast.
251
-
252
-
For a permanent setup with a real domain, see the [Reverse Proxy](#reverse-proxy) section.
253
-
254
-
### Advanced: broadcast across subnets or over the internet
255
-
256
-
WebRTC peer connections work natively on a LAN without any relay server. If you're running Instbyte on a VPS or across different subnets, WebRTC needs a TURN relay to punch through NAT.
257
-
258
-
Install and run [coturn](https://github.com/coturn/coturn) on your server:
259
-
```bash
260
-
sudo apt install coturn
261
-
```
262
-
263
-
Minimal `/etc/turnserver.conf`:
264
-
```
265
-
listening-port=3478
266
-
fingerprint
267
-
lt-cred-mech
268
-
user=instbyte:yourpassword
269
-
realm=yourdomain.com
270
-
```
271
-
272
-
Then update the STUN_SERVERS config in `client/js/app.js` to point to your TURN server. Teams doing this are already comfortable with server config — the coturn docs cover the rest.
273
-
```
214
+
For HTTPS setup, enabling broadcast for all devices, and advanced network configuration, see the [Deployment Guide](docs/deployment.md#broadcasting).
If you don't want external access but still want HTTPS on your local network, tools like [Tailscale](https://tailscale.com) or [Cloudflare Tunnel](https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/) are good options that require no open ports.
175
+
If you don't want external access but still want HTTPS on your local network, tools like [Tailscale](https://tailscale.com) or [Cloudflare Tunnel](https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/) are good options that require no open ports.
176
+
177
+
## Broadcasting
178
+
179
+
### Audio
180
+
181
+
Instbyte captures your microphone alongside the screen share by default. Viewers are muted on join — click 🔇 to unmute.
182
+
183
+
To share audio playing on your screen (videos, music, system sounds), select a **browser tab** in the screen picker and enable **Share tab audio**. Window and full-screen capture do not carry system audio — this is a browser limitation.
184
+
185
+
### HTTPS requirement
186
+
187
+
Broadcasting uses `getDisplayMedia` which browsers only allow on secure connections:
188
+
189
+
- **localhost** — always works. The person running `npx instbyte` can always broadcast.
190
+
- **LAN via HTTP** — viewers can watch but cannot broadcast themselves.
191
+
- **LAN via HTTPS** — everyone on the network can broadcast.
192
+
193
+
### Enabling broadcast for everyone on your network
194
+
195
+
Run Caddy alongside Instbyte. Caddy adds HTTPS automatically — no certificate setup needed.
196
+
```bash
197
+
# Install Caddy
198
+
brew install caddy # macOS
199
+
sudo apt install caddy # Ubuntu / Debian
200
+
201
+
# Terminal 1
202
+
npx instbyte
203
+
204
+
# Terminal 2 — replace with your machine's local IP
0 commit comments