An open API service indexing awesome lists of open source software.

https://github.com/sqmw/lan-clipboard

LAN clipboard sync for macOS and Windows with shared-domain discovery, text/image/file transfer, and encrypted local network sync
https://github.com/sqmw/lan-clipboard

clipboard cross-platform lan local-network macos rust sharing sync tauri typescritp udp vite windows

Last synced: 16 days ago
JSON representation

LAN clipboard sync for macOS and Windows with shared-domain discovery, text/image/file transfer, and encrypted local network sync

Awesome Lists containing this project

README

          


LAN Clipboard Logo

lan-clipboard


Share clipboard across macOS / Windows on the same LAN.

Tauri UI · Rust Core · Shared-domain auto discovery


stars
release
license
platform


📖 Docs ·
🧰 Dev Guide ·
🐛 Issues ·
⭐ Star


🇨🇳 中文 | 🇬🇧 English

---

## 🖼️ UI Screenshot


LAN Clipboard UI Screenshot

Built around shared-domain status, transfer visibility, and only the configuration users actually need.

## 🎯 Design Principles

- **Minimal first**: the UI keeps only the pieces that matter in daily use, such as domain members, network selection, size limit, and transfer progress
- **Efficiency first**: the app is designed around “open, join by shared code, copy, sync” instead of exposing a complex connection flow
- **Debuggable without clutter**: logs, progress, and member state stay available, but the main screen remains quiet and focused

## ✨ Features

- **Shared-domain model**: devices with the same 6-digit shared code on the same LAN join one domain automatically
- **Shared-domain debounce**: the same content is allowed only one effective send in the domain; duplicates are dropped both while the first send is still in flight and after it has already synced successfully
- **Auto discovery**: `mDNS + UDP heartbeat` maintain a live member cache; click “Refresh” for an instant scan
- **Event-driven sync**: clipboard changes are queued and pushed to peers via TCP binary frames
- **Common payloads**: plain text / PNG image / files & folders / basic rich text (HTML/RTF)
- **Encrypted transfer**: toggleable, derived from the shared code by default
- **Multi-NIC support**: pick the correct local IP to avoid virtual adapters on Windows
- **Debug friendly**: transfer progress, type, and previews; logs live under “Advanced / Logs”

## 🚀 Quick Start (Windows + macOS)

1. Connect both devices to the same LAN and open the app.
2. Set the same 6-digit shared code on both sides and click “Save”.
3. If you have multiple NICs/virtual adapters, pick the correct local IP in “Network”, then save.
4. Click “Refresh” and confirm the peer shows up in the members list.
5. Copy text/images/files(or folders)/rich text on one device, then paste on the other.

Additional note:
If the same file or clipboard content is copied repeatedly in a short burst, the app guarantees only the first effective sync. Later duplicate copies are dropped before send to reduce loop risk and avoid wasting bandwidth.

## 📚 Docs

- `docs/README.md`: docs index
- `docs/status.md`: supported scope, limits, and key parameters (including throughput notes)
- `docs/dev.md`: development / debugging guide
- `docs/todo.md`: milestones and TODOs

## ⚠️ Current Limits

- “Any type” does not mean perfect parity for app-private clipboard formats; we only promise a cross-platform supported set (see `docs/protocol.md`)
- Throughput is not yet tuned to consistently saturate LAN bandwidth for large files/images; more data-plane optimizations are planned (see “Throughput” in `docs/status.md`)