finds.dev← search

// the find

max-mapper/screencat

★ 3,007 · CSS · BSD-2-Clause · updated Feb 2016

:cat2: webrtc screensharing electron app for mac os (Alpha)

ScreenCat is a WebRTC-based screen sharing app built on Electron that lets someone remotely control your desktop via mouse and keyboard synthesis. It works peer-to-peer, with a minimal lobby server handling SDP negotiation so you don't have to paste large payloads back and forth. The real hook is that a remote viewer can join from just a browser tab, no app install required.

The browser-based remote viewer is a genuinely good design choice — the sharer installs an app, the viewer opens a URL, which eliminates the usual 'both people need to install X' friction. Using WebRTC for the video channel is the right call here: no relay server in the media path means low latency on a good connection. The SDP lobby server (cat-lobby) is minimal and replaceable, not a lock-in. RobotJS for input synthesis is a pragmatic pick that avoids writing platform-specific native code from scratch.

This project hasn't been touched since February 2016 — that's nearly a decade of Electron, Node, and WebRTC API churn, so there's a high probability it simply doesn't build or run anymore without significant dependency archaeology. The screensharing uses `chromeMediaSource: 'screen'`, an experimental API from 2015-era Chromium that has since been replaced by the standardized `getDisplayMedia`. No signaling fallback: if the cat-lobby server (a third-party hosted endpoint) is down, you can't connect. Input synthesis via RobotJS was acknowledged as rough even at the time, and the repo is forked from an unofficial branch — not a confidence-inspiring dependency chain.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →