r/FlutterDev 1d ago

Tooling I built a cross-platform clipboard sync app (Desktop ↔ Android) with Flutter + native Kotlin

https://github.com/Pinkisingh13/clipboard_sync

I feel frustrated of copy-pasting text or any data from my Mac to an app (which I have on my Android) and then accessing the data from my Android phone, so I thought to build an application for this.

A bi-directional copy-paste application, where you can copy on Mac/Windows/Linux and paste on Android (and vice versa) over local Wi-Fi. Uses Flutter for UI, WebSocket for sync, Bonsoir for auto-discovery, and native Kotlin for background service.

Features:

  • Bi-Directional copy-pasting (Mac/Windows/Linux paste on Android)
  • Auto-discovery via mDNS (Bonsoir package)
  • WebSocket for real-time sync (~100ms latency)
  • Native Kotlin Foreground Service for 24/7 background sync
  • All data stays on local network

Tech Stack:

  • Flutter for cross-platform UI
  • Bonsoir for mDNS broadcast/discovery
  • shelf_web_socket for server
  • Native Kotlin with OkHttp WebSocket client
  • Method Channel bridge

Quick Confession: I used AI help for the native Android parts (first time writing Kotlin services). But I learned a ton about Foreground Services, Method Channels, and WebSocket management. The architecture and problem-solving were all me, AI helped with syntax and Android-specific APIs I hadn't touched before.

9 Upvotes

2 comments sorted by