EasyVNC is a minimal VNC client built in SwiftUI, leveraging libvncclient
from LibVNCServer via an Objective-C++ wrapper.
The goal of this project is to provide a lightweight, native macOS VNC viewer with essential functionality and a clean SwiftUI interface.
- 🔌 Connect to a VNC server via IP and port
- 🖥️ Render the remote framebuffer in a SwiftUI view
- 🖱️ Send basic mouse events (click/tap)
- ⌨️ Send basic keyboard input
- 🔓 No authentication required (for now)
- SwiftUI for the user interface
- Objective-C++ bridge for low-level C integration
- libvncclient (from LibVNCServer) for VNC protocol handling
- CoreGraphics for framebuffer rendering
- macOS 12.0+
- Xcode 14+
- Dependencies:
libvncclient
(compiled statically)zlib
libjpeg
orlibjpeg-turbo
Make sure to run Third-Party/setup-dependencies.sh
, then link the resulting .a
and headers into your Xcode project