New v1.4.1 TCP/UDP Hole Punching, WebRTC & IPv6 P2P Released →

Remote control designed for engineers.
Fast, consent-gated, and peer-to-peer.

Connect across Windows and Linux with native 60 FPS screen streaming, strict per-session consent gating, and zero cloud media relay. Powered by WebRTC with dual TCP/UDP hole punching.

$ chmod +x SwiftDesk-1.4.1.AppImage && ./SwiftDesk-1.4.1.AppImage
Persistent Device ID
849 201 547
One-Time Password
K8V4PQ Stable
Ready — Listening for P2P connection
Password is optional. Leaving password blank sends an interactive direct access request.
Connected Protocol: IPv6 P2P (UDP Hole Punched) Latency: 18ms Framerate: 60 FPS
Host Cursor: Hidden

Hardware-Accelerated 60 FPS Stream

DTLS-SRTP peer-to-peer encrypted channel. Host cursor excluded for crisp local interaction.

Zero Cloud Video Relay

Interactive P2P Traversal Flow

How SwiftDesk penetrates symmetric NATs, firewalls, and ISP restrictions without open ports.

Controller Device
1. Signaling (HTTPS) ◄──────────► SDP / ICE Relay
Relay Server
swiftdesk.eu.cc
2. Signaling (HTTPS) ◄──────────► Zero Media Access
Host Device
Controller Client
3. TCP & UDP Hole Punching + IPv6 Direct ◄════════════════════════════════════════════► Direct DTLS-SRTP Media & Input (60 FPS P2P)
Host Engine
Engineered for Performance

Everything needed for frictionless remote control.

Built without legacy polling overhead. Optimized from the ground up for low latency, zero visual jitter, and strict host privacy.

Networking

TCP & UDP Hole Punching with IPv6 Direct P2P

Employs dual-stack RFC 5389 STUN binding, RFC 6544 TCP candidate pairing, and native IPv6 host routing. Establishes direct peer-to-peer tunnels through corporate NATs and strict cellular firewalls without requiring open router ports.

STUN (RFC 5389)
Dual-Stack➔
TCP Hole Punch (RFC 6544)
Fallback➔
IPv6 Direct Link
Security Architecture

Zero Backdoors. 100% Consent Gated.

Nothing is viewed or controlled without explicit permission. Every remote connection requires an interactive confirmation modal on the target host before screen bytes are encoded.

🛡️
Media Pipeline

Hardware-Accelerated 60 FPS

Chromium desktop capture with contentHint: motion, adaptive bitrate (up to 8 Mbps), and degradation preference to ensure fluid motion and crisp text.

✓ 60 FPS Target • Sub-25ms Latency
User Experience

Hidden Host Cursor by Default

Prevents the annoying double-cursor lag common in traditional remote desktop clients. The host cursor is omitted from the stream so your local mouse interacts seamlessly.

🖱️ Single Pointer Interaction
Compatibility

Linux (Wayland & X11) + Windows 10/11

Native support for Linux distributions (Ubuntu, Fedora, Arch, Debian) with PipeWire capturer and Windows 10/11 64-bit with zero external dependencies.

🐧 🪟
Authentication

Persistent IDs & Non-Expiring Stable OTPs

Your 9-digit Device ID survives restarts. The 6-character OTP stays stable and never rotates automatically during network reconnects—only regenerating when you explicitly click refresh.

Productivity

P2P File Transfer & Native Clipboard Sync

Drag and drop files up to multiple gigabytes directly through WebRTC DataChannels. Instant bidirectional clipboard synchronization with Ctrl+C / Ctrl+V shortcut interception.

Zero Cloud Relay

Architected for privacy and extreme throughput.

Unlike AnyDesk or TeamViewer where screen frames often pass through proprietary cloud servers, SwiftDesk ensures media never touches the signaling relay.

Architecture Component How SwiftDesk Implements It Privacy & Performance Guarantee
Signaling Relay Stateless PHP/HTTPS polling endpoint on swiftdesk.eu.cc Transmits only SDP session offers and ICE network candidates. Zero access to screen buffers.
Transport Layer Direct WebRTC PeerConnection with TCP/UDP Hole Punching Packets travel straight between controller and host IP over the fastest direct route.
Encryption DTLS 1.3 key exchange + SRTP AES-128-GCM media cipher End-to-end encrypted peer-to-peer. Cannot be intercepted or eavesdropped.
Input Injection Native OS event synthesizer (nut-js) with zero artificial delay Precise normalized coordinate mapping that ignores letterbox/pillarbox borders.
Self-Hosting Open PHP relay script included in repository (signaling-server-php/) Run on any $1/mo shared hosting or private VPS with zero configuration.
Objective Benchmark

Why engineers choose SwiftDesk.

A direct comparison of features, pricing, and architectural guarantees against legacy remote access tools.

Feature SwiftDesk (v1.4.1) TeamViewer AnyDesk RustDesk
Consent-Gated Architecture Strictly Required Unattended Default Unattended Default Configurable
TCP / UDP Hole Punching Yes (RFC 6544 & 5389) Proprietary Relay Proprietary Relay Yes
Native IPv6 Direct P2P Yes (Dual-Stack) Partial Partial Yes
Host Cursor Hidden by Default Yes (Zero Cursor Jitter) No No Manual Toggle
Commercial Nag Screens / Limits Zero (100% Free) Timeouts & Popups 100-Sec Timeouts None
Portable Zero-Install Mode Yes (Linux AppImage / Win .exe) Restricted Yes Yes
Download Center

Get SwiftDesk v1.4.1 for your platform.

Completely free, open source, and lightweight. Download standalone portable binaries or installers without creating an account.

SwiftDesk for Windows

v1.4.1 • 64-bit NSIS Setup / Portable • .exe

Native Windows 10 and 11 executable. Choose between an automated NSIS installer or a zero-install portable standalone executable.

Compatibility & Requirements:
Windows 10, Windows 11 (64-bit). No driver installation, DirectX runtime, or admin rights required for portable mode.
Technical Knowledge Base

Frequently Asked Questions

Answers to common engineering and setup questions.

How does SwiftDesk handle TCP & UDP Hole Punching? +
SwiftDesk queries STUN servers over both UDP (RFC 5389/8489) and TCP (RFC 6544) to discover public reflexive transport mappings. When two machines are behind NAT firewalls, ICE candidate trickling tests simultaneous packet injection. In 95%+ of connections, a direct P2P socket is formed with zero relay hops.
Why is the host cursor hidden by default? +
In standard screen capture tools, the operating system bakes the hardware cursor into the video frame buffer. When controlling remotely, this produces a distracting duplicate cursor lagging behind your local pointer. SwiftDesk captures with cursor: 'never' so you experience a crisp, single-cursor interface identical to sitting at the physical machine.
Can I self-host my own signaling server? +
Yes. The entire signaling backend is an open-source PHP script located in signaling-server-php/ in the repository. You can upload it to any standard Apache/Nginx web server and point SwiftDesk to your custom URL in the Settings tab.
Is screen data ever saved or uploaded to the cloud? +
Never. The signaling server at swiftdesk.eu.cc only exchanges SDP descriptions (codecs, resolutions, network candidates). The actual video, audio, keystrokes, and clipboard events travel strictly peer-to-peer via DTLS-SRTP and never touch third-party servers.
Does it work on Linux Wayland? +
Yes. SwiftDesk integrates with the Freedesktop ScreenCast Portal and PipeWire on modern Linux distributions (GNOME, KDE Plasma, Sway, Hyprland). When launching, it automatically detects Ozone/Wayland or X11 to ensure instantaneous startup.