Reference projects
OmegaDesk is written from scratch, in Rust (see language.md). The projects below are studied to learn about architecture, protocols and solutions.
Ideas and architecture are not subject to licenses. Copying code is: a copied snippet may only be included if its license is compatible with AGPL-3.0, it is credited, and the original copyright notice is kept.
Licenses verified against each repository’s files on 2026-10-24.
| Project | What to study | License | Copy code? |
|---|---|---|---|
| rustdesk/rustdesk | Client architecture, NAT traversal, codecs, Windows service | AGPL-3.0 | ✅ |
| rustdesk/rustdesk-server | ID server (hbbs) and relay (hbbr) | AGPL-3.0 | ✅ |
| zibo-chen/SubnetDesk | LAN-only mode, no server | AGPL-3.0 | ✅ |
| Ylianst/MeshCentral | Web dashboard, agent management, groups and permissions | Apache-2.0 | ✅ |
| amidaware/tacticalrmm | RMM features (scripts, alerts, inventory) | Tactical RMM License (proprietary) | ❌ ideas only |
| kunkundi/crossdesk | Lightweight web client | GPL-3.0 | ✅ |
| galaxy-s10/billd-desk | WebRTC pipeline | MIT | ✅ |
| miroslavpejic85/p2p | Portable mode, no installation | MIT | ✅ |
| dchapyshev/aspia | Relay, file transfer, address book | GPL-3.0 | ✅ |
| barry-ran/QuickDesk | AI integration via MCP | MIT | ✅ |
| immense/Remotely | Remote support without installation (inactive since 12/2024) | GPL-3.0 | ✅ |
| apache/guacamole-server + client | Browser gateway, session recording | Apache-2.0 | ✅ |
| jumpserver/jumpserver | Privileged access management (PAM), auditing, access approval | GPL-3.0 | ✅ |
| kasmtech/KasmVNC | High-performance VNC in the browser | GPL-2.0-or-later | ✅ |
| novnc/noVNC | VNC client in JavaScript | MPL-2.0 | ✅ |
| selkies-project/selkies | GPU-accelerated WebRTC streaming, containers | MPL-2.0 | ✅ |
| FreeRDP/FreeRDP | Complete RDP protocol | Apache-2.0 | ✅ |
| Devolutions/IronRDP | RDP in Rust; can be used as a dependency | MIT/Apache-2.0 | ✅ |
| neutrinolabs/xrdp | RDP server for Linux | Apache-2.0 | ✅ |
| TigerVNC/tigervnc | VNC/RFB protocol | GPL-2.0-or-later | ✅ |
| ultravnc/UltraVNC | VNC features on Windows | GPL-3.0 | ✅ |
| mRemoteNG/mRemoteNG | Tabbed connection manager | GPL-2.0-or-later | ✅ |
| FreeRDP/Remmina | Multi-protocol client for Linux | GPL-2.0-or-later | ✅ |
| 1Remote/1Remote | Quick connection launcher | GPL-3.0 | ✅ |
| LizardByte/Sunshine | Low-latency hardware encoding | GPL-3.0 | ✅ |
| moonlight-stream/moonlight-qt | Low-latency decoding and display | GPL-3.0 | ✅ |
| ClassicOldSong/Apollo | Virtual display at the client’s resolution | GPL-3.0 | ✅ |
Local copies
Shallow clones (--depth 1) in C:\Users\Ricardo.Bueno\omegadesk-ref\. They are kept outside this repository on purpose.
Mesh network (Tailscale-style)
Goal: every OmegaDesk agent and client joins an encrypted private network, reaching any machine by its internal IP or name, traversing NAT without opening ports, with our own relay when a direct connection fails.
| Project | What to study | Language | License | Copy code? |
|---|---|---|---|---|
| tailscale/tailscale | The market reference: DERP (relay), disco (path discovery), MagicDNS, ACLs, SSH | Go | BSD-3 | ✅ |
| juanfont/headscale | Self-hosted Tailscale control server | Go | BSD-3 | ✅ |
| netbirdio/netbird | Separate management, signal and relay; ICE; policies and posture checks | Go | BSD-3 for the client, AGPL-3.0 for the server | ✅ |
| EasyTier/EasyTier | Decentralized mesh in Rust, no mandatory central server, WireGuard, QUIC, KCP | Rust | LGPL-3.0 | ✅ |
| cloudflare/boringtun | Userspace WireGuard in Rust; can be a direct dependency | Rust | BSD-3 | ✅ |
| tonarino/innernet | Private network over WireGuard with hierarchical CIDRs | Rust | MIT | ✅ |
| DefGuard/defguard | WireGuard with MFA and zero-trust access | Rust | AGPL-3.0 (core), enterprise/ proprietary |
✅ except enterprise/ |
| slackhq/nebula | Certificate-based overlay with lighthouses | Go | MIT | ✅ |
| zerotier/ZeroTierOne | Virtual Ethernet network (layer 2) | C++ | MPL-2.0, nonfree/ proprietary |
✅ except nonfree/ |
| firezone/firezone | Zero-trust remote access; the connection core (connlib) is in Rust | Elixir + Rust | Apache-2.0 | ✅ |
| gravitl/netmaker | WireGuard network automation | Go | Apache-2.0, pro/ proprietary |
✅ except pro/ |
Note: headscale was extracted without hscontrol/testdata/apiv1_golden/, which contains file names that are invalid on Windows.