gitwtfhub

rustdesk/rustdesk

113,602RustAudience · developerComplexity · 4/5ActiveLicenseSetup · hard

TL;DR

Open-source remote desktop software that lets you control computers over the internet while keeping your data on your own servers instead of relying on commercial services.

Mindmap

mindmap
  root((RustDesk))
    What it does
      See and control screens
      Works over internet
      Self-hosted option
    Key components
      Rendezvous server
      Relay server
      Desktop clients
      Mobile apps
    Tech stack
      Rust backend
      Flutter UI
      Android iOS
    Use cases
      Remote support
      Access own machine
      Company infrastructure
    Deployment
      Docker containers
      Linux Windows
      F-Droid Flathub
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why anyone would actually build this

REASON 1

Remotely support a friend or family member's computer without sending traffic through a third party's servers.

REASON 2

Access your own machine from anywhere while traveling or working remotely.

REASON 3

Set up remote support infrastructure inside a company while keeping all traffic on your own network.

Stack

RustFlutterSciterAndroidiOSDocker

Spinning it up

Difficulty · hard Time to first run · 1day+

Requires building Rust backend, Flutter frontend, and Docker infrastructure, multiple platform targets and dependencies.

Open-source license allowing free use and modification, with the ability to self-host and control your own infrastructure.

Wtf does this do

RustDesk is an open-source remote-desktop application written in Rust. The README and description present it as a self-hostable alternative to TeamViewer: you install the program on two computers, and from one you can see and control the other across the internet, just as with the commercial remote-desktop tools most people are familiar with. The README claims it works out of the box with no configuration required and emphasises that you stay in full control of your data. The connection between the two machines goes through a "rendezvous/relay" server, which helps them find each other and forwards traffic when a direct peer-to-peer link is not possible. You can use the public RustDesk servers, set up your own, or even write your own implementation, the project links to a demo server repo for that. There is also a paid offering called RustDesk Server Pro for advanced features. The desktop versions can use either Flutter or the older Sciter library for the user interface, the README's build steps focus on the Sciter path and explain how to fetch the Sciter library for Windows, Linux and macOS. Building from source involves a Rust toolchain, a C++ build environment and vcpkg to install media dependencies like libvpx, libyuv, opus and aom. Install commands are provided for Ubuntu/Debian, openSUSE, Fedora/CentOS and Arch/Manjaro, plus a Docker-based build flow. Pre-built binaries, an F-Droid build and a Flathub package are also offered. Someone would reach for RustDesk when they want a free, self-hosted way to give remote support, access their own machine from elsewhere, or replace a commercial remote-desktop subscription.

Yoink these prompts

Prompt 1
How do I set up a self-hosted RustDesk server with my own rendezvous and relay servers instead of using the public ones?
Prompt 2
What are the steps to build RustDesk from source on Linux and deploy it in Docker?
Prompt 3
How do I configure RustDesk to work behind a corporate firewall or NAT for internal remote support?
Prompt 4
Can I customize the RustDesk client UI and what are the differences between the Flutter and Sciter versions?
View the repo → Decode another repo

← rustdesk on gitmyhub — every repo by this author, as a profile.

Don't trust strangers blindly. Verify against the repo.