// the find
LucklySpace/Lucky-client
A cross-platform instant messaging client application built with Tauri and Vue 3, featuring one-to-one chat, group chat, file transfer, audio/video calling, screen recording, screenshot capture, and QR code login capabilities.
A Tauri 2 + Vue 3 desktop IM client — think a self-hosted WeChat alternative with 1:1 and group chat, WebRTC calls, file transfer, and screen capture. It's a client-only repo; you need to bring your own backend server that speaks its WebSocket/Protobuf protocol. Aimed at developers who want to study or fork a full-featured IM client rather than deploy one off-the-shelf.
The custom ORM with XML mapper files (MyBatis-style) and FTS5 full-text search for SQLite is genuinely interesting — not something you see in most Tauri projects. Putting WebSocket in a Web Worker is the right call and keeps the UI thread clean. The hook-based architecture (useWebRTC, useFileTransfer, useWebSocketWorker) is well-decomposed for a project this size. Using Protobuf over the wire instead of raw JSON shows someone thought about the protocol seriously.
There's no backend in this repo at all — the server that handles auth, message routing, group management, and WebRTC signaling is a separate undocumented project; you can't run this without finding or writing it yourself. The README links to a different repo (dennis9486/Lynk) as the 'project homepage', suggesting this is a fork with unclear divergence history. The nginx config hardcodes a LAN IP (192.168.31.166) in what's meant to be documentation, which is sloppy. No tests anywhere in the tree — given the custom ORM and WebRTC state machine, that's a real gap for anyone trying to modify it.