From fefb78901078c9c2fcafca23282806461d6b2a24 Mon Sep 17 00:00:00 2001 From: ZGaetano Date: Wed, 6 May 2026 16:16:56 -0400 Subject: [PATCH] chore: add build scaffolding, overlay structure, CI workflow: README.md --- README.md | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 52 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index a99866c..3674417 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,53 @@ -# wilddragon-restreamer-ui +# Wild Dragon Restreamer UI -Wild Dragon fork of datarhei/restreamer-ui — branding + WebRTC WHEP egress controls for dragonfork-core \ No newline at end of file +Wild Dragon fork of [datarhei/restreamer-ui](https://github.com/datarhei/restreamer-ui), adding: + +- **Wild Dragon branding** — logo, theme, manifest, page title +- **WebRTC (WHEP) output control** — per-channel toggle in the Processing & Control editor tab +- **WHEP URL copy button** — alongside HLS/RTMP/SRT in the main channel view +- **Live viewer count** — badge polling `GET /api/v3/webrtc/streams/{id}/peers` (requires [dragonfork-core](https://forge.wilddragon.net/zgaetano/datarhei-dragonfork-core)) + +## Upstream + +Pinned to **datarhei/restreamer-ui v1.14.0** (React 18, MUI v5). + +## Build + +```sh +docker build -t wilddragon-ui . +``` + +Or pull the prebuilt image from CI (see `.forgejo/workflows/publish.yml`). + +## Repository structure + +``` +overlay/ Wild Dragon files layered on top of upstream at build time + public/ index.html, manifest.json (branding) + src/ + misc/ + controls/ + WHEP.js WebRTC output toggle control (new) + Logo/ Wild Dragon logo components + SVG assets + views/ + Edit/ + index.js Upstream file + WHEPControl section in Processing tab + Main/ + index.js Upstream file + WHEP copy button + viewer count + WHEPStatus.js Live WebRTC viewer count badge (new) +apply-overlay.sh Phase-1 file copy + Phase-2 awk patches (Header/Welcome/Settings) +Dockerfile clone upstream v1.14.0 → apply overlay → yarn build → Caddy +Caddyfile Caddy v2 config for the built SPA +``` + +> **Binary assets** (`overlay/public/favicon.ico`, `logo192.png`, `logo512.png`) must be +> committed separately via git — the Forgejo API does not accept binary uploads in text form. + +## Upstream rebase + +When datarhei releases a new restreamer-ui version: + +1. Update `ARG UPSTREAM_TAG` in `Dockerfile`. +2. Verify the three `patch_line` calls in `apply-overlay.sh` still match the new upstream. +3. Re-fetch and re-diff `overlay/src/views/Edit/index.js` and `overlay/src/views/Main/index.js` + against the new upstream to carry forward our additions.