// the find
selkies-project/selkies
Open-Source Low-Latency Accelerated Linux WebRTC HTML5 Remote Desktop Streaming Platform for Self-Hosting, Containers, Kubernetes, or Cloud/HPC
Selkies streams a Linux X11 desktop over WebRTC to any browser, with GPU acceleration via GStreamer. It started as a Google internal tool for cloud GPU workloads and is now maintained by academic/HPC community contributors. The target is Kubernetes/SLURM clusters where you need a graphical session without RDP or VNC infrastructure.
GPU-accelerated encoding through GStreamer means it can actually hit 60fps at 1080p where noVNC would choke. The WebRTC transport handles NAT traversal properly, including a bundled coturn TURN server for the hard cases. The joystick interposer (a C shim that intercepts udev calls) is a genuinely clever solution for passing gamepad input through to containerized apps that expect real hardware. DevContainer feature support means you can drop a desktop session into a Codespaces or Coder workspace with a few lines of JSON.
The setup complexity is real: you need GStreamer with the right plugins built from source, a TURN server, a signaling server, and an X virtual framebuffer all running correctly before a single pixel appears. The README leads with a 'we need maintainers' callout, which is honest but signals that bus factor is a problem. The Python WebRTC stack in src/selkies/webrtc/ appears to be a vendored fork of aiortc — it's not clear how far it has diverged or how security patches would flow in. Two parallel dashboard implementations (selkies-dashboard and selkies-dashboard-wish) exist side by side with no indication which one is current or which will be dropped.