finds.dev← search

// the find

lyswhut/lx-music-sync-server

★ 821 · TypeScript · Apache-2.0 · updated Sep 2025

运行在 Node.js 上的 LX Music 数据同步服务

A self-hosted sync server for LX Music, a Chinese music player app. It keeps playlist and dislike-list data in sync across devices over WebSocket. Aimed at LX Music users who want their own sync backend instead of relying on a third-party service.

WebSocket-based sync with snapshot versioning is a reasonable design for eventual-consistency list sync — conflict resolution via 'remote overrides local' is explicit rather than silent. Environment-variable-based user config (LX_USER_ prefix) makes it container-friendly without touching config files. Docker Hub image is published and the Dockerfile is included for self-build. IP-based brute-force lockout on bad connection codes is a sensible low-friction security measure.

No built-in TLS — the README offloads this entirely to Nginx, which is fine, but the default bind is 127.0.0.1 with no warning if you change it to 0.0.0.0 without a reverse proxy in place. The upgrade path is manual file surgery: delete specific directories, copy in new files, re-run npm ci — no migration tooling, no versioned rollback. The config.js file is mutable JavaScript (not JSON or YAML), so misconfiguration errors only surface at runtime. Snapshot restore requires manual JSON editing of snapshotInfo.json with no validation step, which is fragile and not documented well enough for the target audience.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →