deskreen README

The project's README from github.com/pavlobu/deskreen. As one markdown file: README.md.

Deskreen CE (Community Edition)

platform (Over 2M downloads during 5 years since launch)

Deskreen Logo

Deskreen turns any device with a web browser into a secondary screen for your computer

To learn more visit our website: deskreen.com

Donate to support Deskreen Open-Source

Deskreen is an electron.js based application that uses WebRTC to make a live stream of your computer screen to a web browser on any device. It is available for MacOS, Windows and Linux operating systems. The current open-source Community Edition version has limited features. If you need more features please consider upgrading to Pro version for more features when it is released.


▶️ See how people use Deskreen on Youtube (video tutorials, demos, use cases for Deskreen day to day usage)


Deskreen Frequently Asked Questions


Prerequisites

You will need to have node>=v23 npm>=10 installed.

  1. git clone this repo
  2. npm i
  3. cd ./src/client-viewer && npm i && cd ../..
  4. npm run clean && npm run build && npm run start -- run in prod like mode

for more npm scripts look at package.json

Starting with Custom Local IP

You can start Deskreen CE with a custom local IP address using the --local-ip or --ip CLI flag. This is useful when you want to specify a particular network interface IP address.

macOS

# Using open command (recommended)
open -a "Deskreen CE" --args --ip 192.168.1.100

# Or using the executable directly
/Applications/Deskreen\ CE.app/Contents/MacOS/Deskreen\ CE --ip 192.168.1.100

# Get your IP automatically and launch
open -a "Deskreen CE" --args --ip "192.168.1.100"

Windows

# Using Start-Process (PowerShell)
Start-Process "Deskreen CE" -ArgumentList "--ip", "192.168.1.100"

# Or using the executable directly
"C:\Program Files\Deskreen CE\Deskreen CE.exe" --ip 192.168.1.100

# Or from Command Prompt
start "" "C:\Program Files\Deskreen CE\Deskreen CE.exe" --ip 192.168.1.100

Linux

# If installed via AppImage
./Deskreen\ CE-*.AppImage --ip 192.168.1.100

# If installed via .deb/.rpm package (usually in /usr/bin or /opt)
deskreen-ce --ip 192.168.1.100

# Or using full path
/opt/Deskreen\ CE/deskreen-ce --ip 192.168.1.100

Note: Replace 192.168.1.100 with your actual local IP address. You can find your IP using:

When using the --ip or --local-ip flag, the app will use the specified IP for QR codes and connection URLs, while still monitoring the actual network interface status for WiFi connection detection.

Maintainer

License

AGPL-3.0 License © Pavlo (Paul) Buidenkov

Electron-Vite MIT License © electron-vite

React MIT License © Facebook, Inc. and its affiliates

Vite MIT License © Vite.js

Electron Builder MIT License © electron-builder contributors

Apache 2.0 © blueprintjs

simple-peer MIT. Copyright © Feross Aboukhadijeh

tweetnacl ISC License © Dmitry Chestnykh, Devi Mandiri, and contributors (https://github.com/dchest/tweetnacl-js)

darkwire.io MIT License © darkwire/darkwire.io

And many many others...

Thanks

🙏 Many thanks to all 🌍 open source community members and maintainers of libraries used in this project.

deskreen (pavlobu/deskreen)

Searching Database…

21.6K ·GitHub
What is this?Deskreen turns any device with a web browser — a phone, tablet or laptop — into a second screen for your computer. It is an Electron app that streams your screen live over WebRTC.
So Deskreen is installed only on my computer, and the second device just opens a web browser?Right. You install the app only on the computer; the other device needs nothing but a browser — it opens the connection URL or scans the QR code Deskreen shows.
How do I get it running?For the Community Edition you build from source: clone the repo, run npm i, install the client-viewer dependencies, then npm run clean && npm run build && npm run start. The project website is deskreen.com.
What do I need to have installed before building it?Node.js v23 or newer and npm 10 or newer. Everything else is pulled in by npm during the install steps.
Is the free version missing anything?Yes — the open-source Community Edition has limited features. The README suggests the upcoming Pro version if you need more, but it has not been released yet and its feature list is not given.
Which operating systems does it support?macOS, Windows and Linux. The viewer side works in any web browser, so phones and tablets are covered regardless of their OS.
Is this a proven tool or a fresh experiment?Proven: the Community Edition has been downloaded over 2 million times during the five years since launch.
Can I share just one app window instead of the whole desktop?Yes — the project's own topics list both 'share-screen' and 'share-app-window', so single-window sharing is offered alongside full-screen sharing.
Is the stream between my computer and the other device encrypted?According to the project's metadata, yes: it is tagged 'end-to-end-encryption', and the credits include tweetnacl and darkwire.io, libraries used for encrypted WebRTC.
What is it built with?TypeScript on Electron, built with electron-vite. The UI uses React with Blueprint.js, WebRTC goes through simple-peer, and tweetnacl handles the cryptography.
Creator
pavlobu
Size
11 MB
Stars
21.6K
Age
6y
Commits · 90 Days