# kunkundi/crossdesk

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/kunkundi-crossdesk).**

3,776 stars · 355 forks · C++ · lgpl-3.0

## Links

- GitHub: https://github.com/kunkundi/crossdesk
- Homepage: https://www.crossdesk.cn
- awesome-repositories: https://awesome-repositories.com/repository/kunkundi-crossdesk.md

## Topics

`audio-streaming` `codec` `cplusplus` `cross-platform` `imgui` `kcp` `libdatachannel` `remote-control` `remote-desktop` `rtc` `rtp` `sdl3` `video-streaming` `web-client` `webrtc` `xmake`

## Description

Crossdesk is a cross-platform remote desktop software used for streaming and controlling remote computers. It consists of a hardware-accelerated video streamer and a web-based client that allows users to operate remote devices through a browser without installing platform-specific software.

The system utilizes a self-hosted connection relay deployed via containers to manage remote sessions and forward traffic when direct peer-to-peer connections fail. To maintain performance, it employs hardware-accelerated video encoding and streaming to reduce latency and CPU load.

The software provides cross-platform device control and remote input handling for keyboards and mice. A background system service enables access to protected environments, such as login interfaces and lock screens, while a coordination server supports the simultaneous management of multiple remote machines from a single interface.

## Tags

### Networking & Communication

- [Remote Desktop Clients](https://awesome-repositories.com/f/networking-communication/remote-access-control/remote-desktop-clients.md) — Implements a cross-platform system for streaming and controlling remote computers over a network.
- [Remote Desktop Streaming](https://awesome-repositories.com/f/networking-communication/remote-desktop-streaming.md) — Provides a hardware-accelerated system for transmitting low-latency video feeds of a host screen to remote devices. ([source](https://web.crossdesk.cn/))
- [Remote Input Relays](https://awesome-repositories.com/f/networking-communication/remote-input-relays.md) — Implements a system to transmit keyboard and mouse input events from a remote client to a host machine over a network. ([source](https://cdn.jsdelivr.net/gh/kunkundi/crossdesk@file-transfer/README.md))
- [Web-Based Remote Clients](https://awesome-repositories.com/f/networking-communication/web-based-remote-clients.md) — Ships a browser-based implementation of a remote desktop client hosted on a central coordination server. ([source](https://www.crossdesk.cn/))
- [Multi-Device Connection Managers](https://awesome-repositories.com/f/networking-communication/multi-device-connection-managers.md) — Enables simultaneous management of multiple remote machines from a single centralized coordination interface. ([source](https://www.crossdesk.cn))
- [Relay Fallbacks](https://awesome-repositories.com/f/networking-communication/peer-to-peer-networking/relay-fallbacks.md) — Provides fallback routing through relay servers when direct peer-to-peer connections are blocked by firewalls.
- [Private Relay Hosting](https://awesome-repositories.com/f/networking-communication/relay-server-configurations/private-relay-hosting.md) — Supports the deployment of private, self-hosted relay servers to manage remote sessions and traffic. ([source](https://cdn.jsdelivr.net/gh/kunkundi/crossdesk@file-transfer/README.md))

### Part of an Awesome List

- [Browser-Based Remote Desktops](https://awesome-repositories.com/f/awesome-lists/devops/remote-desktop/browser-based-remote-desktops.md) — Enables remote desktop control directly through a web browser to eliminate the need for native client software.

### DevOps & Infrastructure

- [Session Coordination Servers](https://awesome-repositories.com/f/devops-infrastructure/coordination-server-deployments/session-coordination-servers.md) — Provides a containerized coordination server for managing remote sessions and signaling logic.

### Graphics & Multimedia

- [Hardware-Accelerated Codecs](https://awesome-repositories.com/f/graphics-multimedia/gpu-accelerated-media-rendering/hardware-accelerated-codecs.md) — Uses hardware-accelerated codecs to optimize screen streaming and reduce host CPU utilization. ([source](https://www.crossdesk.cn))
- [Hardware-Accelerated Captures](https://awesome-repositories.com/f/graphics-multimedia/streaming-distribution/streaming-broadcasting/media-streaming/video-streaming/high-fidelity-streaming/hardware-accelerated-captures.md) — Utilizes hardware-accelerated capture and encoding to reduce CPU load and latency during remote sessions.

### System Administration & Monitoring

- [Privileged Background Services](https://awesome-repositories.com/f/system-administration-monitoring/background-service-managers/privileged-background-services.md) — Implements a privileged background process to capture screen data and inject inputs into protected system areas like lock screens.
- [Browser-Based Remote Desktop Clients](https://awesome-repositories.com/f/system-administration-monitoring/browser-based-remote-desktop-clients.md) — Offers a browser-based client that allows users to control remote desktops without installing platform-specific software.
- [Remote Desktop Software](https://awesome-repositories.com/f/system-administration-monitoring/remote-desktop-software.md) — Provides comprehensive software for accessing and controlling remote computer systems across platforms.
- [Cross-Platform Administration Tools](https://awesome-repositories.com/f/system-administration-monitoring/cross-platform-administration-tools.md) — Provides a unified interface for managing and operating computers running different operating systems.
- [Self-Hosted Remote Management Servers](https://awesome-repositories.com/f/system-administration-monitoring/self-hosted-remote-management-servers.md) — Provides a self-hosted coordination server to manage connections and relay traffic for remote sessions.

### User Interface & Experience

- [OS Native Input Translation](https://awesome-repositories.com/f/user-interface-experience/input-mapping/keyboard-command-mapping/os-native-input-translation.md) — Translates keyboard and mouse events from a remote client into native OS commands on the host machine.

### Operating Systems & Systems Programming

- [Cross-Platform Device Managers](https://awesome-repositories.com/f/operating-systems-systems-programming/ios-device-management/cross-platform-device-managers.md) — Provides a unified interface to access and manage remote computers regardless of their operating system. ([source](https://www.crossdesk.cn/))

### Security & Cryptography

- [Privileged System Interface Access](https://awesome-repositories.com/f/security-cryptography/screen-access-permissions/lock-screen-access-control/privileged-system-interface-access.md) — Enables access and control of protected environments, including lock screens and login interfaces, through a privileged background service. ([source](https://cdn.jsdelivr.net/gh/kunkundi/crossdesk@file-transfer/README.md))
