How sangyu666/syycdesk works
SyycDesk is a remote-desktop product: users connect to a peer, negotiate a session and transport, then exchange desktop video, input, and auxiliary operations such as file transfer. The tree shows Windows and Qt UI variants, a Go coordination/relay server, and native networking and media layers. The README is empty, and sampled source is partial, so the graph emphasizes supported entry points and subsystem capabilities while omitting uncertain internal wiring.
Main entry points: main.go API service · connection_controller.cpp Connection control · remote_session_controller.cpp Remote session · app_window.cpp Windows UI
Components 22
Desktop clients
- Windows UI
WIN32UI/src/app_window.cpp - Qt UI
ui_skeleton/src/ui/main/main_window.cpp
Session control
- Connection control
WIN32UI/src/core/connection_controller.cpp - Remote session
WIN32UI/src/sub_windows/remote_session_controller.cpp - Native bridge
WIN32UI/src/core/native_bridge.cpp - File transfer
WIN32UI/src/core/file_transfer_controller.cpp - Server client
ui_skeleton/src/ui/native/server_client.cpp
Connectivity
- Path negotiation
p2p_native/src/engine.cpp - Native transport
p2p_native/providers/native/src/native_provider.cpp - Relay transport
p2p_native/providers/native/src/relay_transport.cpp
Desktop media
- Video pipeline
core_native/src/media/video_pipeline.cpp - Input routing
core_native/src/input/input_router.cpp - Windows capture
platform/windows/capture/dxgi_capture.cpp - Input injection
platform/windows/input/windows_input_injector.cpp
Coordination service
- API service
Server/cmd/api/main.go - Authentication
Server/internal/auth/auth.go - Signaling hub
Server/internal/signaling/hub.go - Session service
Server/internal/session/service.go - Device presence
Server/internal/presence/registry.go - Relay service
Server/internal/relay/runtime.go - Operations console
Server/internal/console/handler.go
Other components
- Remote user
Connections 20
- Remote user → Windows UI: uses
- Remote user → Qt UI: uses
- Windows UI → Connection control: starts sessions
- Connection control → Native bridge: controls native
- Connection control → Remote session: updates state
- Remote session → Input routing: submits input
- Remote session → File transfer: requests transfers
- Qt UI → Server client: uses
- Server client → API service: contacts service
- API service → Authentication: authenticates
- API service → Session service: manages sessions
- API service → Device presence: tracks devices
- API service → Signaling hub: dispatches signaling
- Signaling hub → Relay service: coordinates relay
- Native bridge → Path negotiation: drives paths
- Path negotiation → Native transport: selects path
- Native transport → Relay transport: uses relay path
- Video pipeline → Windows capture: captures frames
- Input routing → Input injection: delivers input
- Remote user → Operations console: monitors service