
Lymic – Open-source desktop upload client for Immich (Feedback welcome)
Hi everyone,
I've been working on Lymic, an open-source desktop client designed to automatically upload and sync local photos and videos to an Immich instance.
Why I built it
I wanted a lightweight desktop tool that sits quietly in the background, watches local folders (like camera export folders or local photo libraries), and pushes new files to Immich without having to open the web UI or run CLI scripts manually.
What it does
- Watches local directories and detects new or updated files automatically.
- Reuses cached hashes and runs bulk checks against Immich to skip files that already exist on the server.
- Streams multipart uploads directly from disk, keeping memory usage low even with large video files.
- Handles common photo and video formats, Live Photo / Motion Photo pairs, and XMP sidecars.
- Stores API keys securely in the operating system's native keyring (Credential Manager, Keychain, Secret Service).
- Runs minimized in the system tray with a persistent SQLite queue that survives app restarts.
Note: Lymic is strictly an upload client, not a two-way sync. It does not download remote assets or mirror server-side deletions.
Tech stack
- Backend: Rust with Tauri v2
- Frontend: SvelteKit + Tailwind CSS
- Database: SQLite (SQLx)
The project is licensed under MIT: GitHub: https://github.com/xXRoxXeRXx/lymic
Prebuilt binaries for Windows, macOS, and Linux are available under GitHub Releases.
I would appreciate any feedback, bug reports, or ideas for improvement.