How mcteekung/mineshare works
MineShare is a Windows/Linux LAN KVM and bidirectional audio bridge. A user configures and monitors peers in the desktop UI; the daemon discovers and pairs peers, then coordinates cursor/keyboard sharing, clipboard and file transfer, audio/microphone bridging, and status reporting. The graph preserves these distinct capabilities and the core routing layer. Runtime wiring is inferred only where README or sampled source documents it; several daemon handlers and UI pages were not sampled.
Main entry points: App.tsx MineShare UI · runtime.rs Session runtime · lib.rs Secure peer channel · files.rs File transfer
Components 22
Desktop interface
- MineShare UI
ui/src/App.tsx - Home status
ui/src/pages/Home.tsx - Layout controls
ui/src/pages/Layout.tsx - Audio controls
ui/src/pages/AudioDevices.tsx - File transfers
ui/src/pages/Files.tsx - Tauri bridge
ui/src-tauri/src/lib.rs
Daemon runtime
- Daemon entry
crates/mineshare-daemon/src/main.rs - Session runtime
crates/mineshare-daemon/src/runtime.rs - Status and settings
crates/mineshare-daemon/src/status.rs - Clipboard sync
crates/mineshare-daemon/src/clipboard.rs - File transfer
crates/mineshare-daemon/src/files.rs
Peer networking
- Pairing and trust
crates/mineshare-daemon/src/pairing.rs - Peer discovery
crates/mineshare-net/src/discovery.rs - Secure peer channel
crates/mineshare-net/src/lib.rs
Input sharing
- Cursor routing
crates/mineshare-core/src/routing.rs - Input capture/injection
crates/mineshare-input/src/lib.rs
Audio and sharing
- Audio bridge
crates/mineshare-audio/src/lib.rs
Other components
- User
- Peer PC
- Local audio devices
- Clipboard applications
- Downloads folder
Connections 27
- User → MineShare UI: configures
- MineShare UI → Tauri bridge: invokes commands
- Tauri bridge → Session runtime: embeds runtime
- Daemon entry → Session runtime: runs
- Session runtime → Peer discovery: discovers peers
- Session runtime → Pairing and trust: coordinates pairing
- Pairing and trust → Secure peer channel: secures session
- Peer discovery → Peer PC: announces via mDNS
- Secure peer channel → Peer PC: exchanges encrypted data
- Session runtime → Input capture/injection: coordinates input
- Input capture/injection → Cursor routing: uses routing state
- Input capture/injection → Secure peer channel: forwards input events
- Session runtime → Audio bridge: coordinates audio
- Audio bridge → Secure peer channel: sends audio frames
- Local audio devices → Audio bridge: provides audio
- Session runtime → Clipboard sync: coordinates sync
- Clipboard sync → Secure peer channel: syncs clipboard
- Clipboard applications → Clipboard sync: shares text
- Session runtime → File transfer: coordinates transfers
- File transfer → Secure peer channel: streams files
- File transfer → Downloads folder: writes received files
- MineShare UI → Home status: renders status
- MineShare UI → Layout controls: shows controls
- MineShare UI → Audio controls: shows controls
- MineShare UI → File transfers: shows transfers
- MineShare UI → Status and settings: polls status
- Status and settings → MineShare UI: returns status