rosesmall2010

xmmusic

XM Music is a cross-platform local music player built with Electron, Vue 3, and TypeScript, offering smart scanning, playlists and favorites, four-source online lyric and cover matching, and pinyin search.

v2.0.0
Published at
11d ago
9
Stars
70
Download
Synced at
10d ago

Latest release

v2.0.0Oct 17, 2026, 04:06 PM
Downloads slow? Switch the source anytime above

README

Project Overview

XM Music is a local music player built with Electron, Vue 3, and TypeScript, styled after QQ Music, and available for macOS, Windows, and Linux. It performs smart scanning and metadata editing on a local library and offers playlist, favorite, and playback-mode management. Lyrics and covers can be matched online, with LRC, full-screen, and desktop lyrics, and search supports Chinese characters, full pinyin, and initials.

A good-looking cross-platform local player built for large libraries.

Key Features

  • Local music management: smart scanning, configurable scan folders, metadata editing, and cover extraction
  • Stale cleanup: remove records for files that no longer exist or are marked unplayable
  • Playlist management: create, edit, set covers, and copy songs to a folder
  • Favorites and recents: quick favorites with recents pinned to the top
  • High-quality playback: native Audio first with Howler.js fallback, plus several playback modes
  • Equalizer: built-in presets with custom tuning, sharing one filter chain across full-screen, mini, and normal modes
  • Smart search: search by Chinese characters, full pinyin, or initials
  • Lyrics: LRC, full-screen lyrics, and desktop lyrics with offset calibration and batch online matching
  • Cover matching: search covers by tags or filename, with batch matching and cover export
  • Tag editing: smart filename parsing to fix garbled tags, with automatic encoding detection and a manual fallback
  • Performance: virtual scrolling and incremental loading handle libraries and queues in the tens of thousands

Target Audience

  • Collectors with large local music libraries
  • Users who need to fill in lyrics and covers in bulk
  • Listeners who care about interface polish and search speed
  • Users working across macOS, Windows, and Linux

Quick Start

  1. Download the installer for your platform from Releases
  2. Add a local music folder in settings on first launch
  3. Scan the library and wait for metadata and cover extraction
  4. Double-click a song to play, or run batch lyric and cover matching
  5. Use the top search box with full pinyin or initials to find songs quickly

Core Advantages

  • Large-library friendly: virtual scrolling and incremental loading keep tens of thousands of songs smooth
  • Comprehensive matching: both lyrics and covers support concurrent multi-source online matching
  • Strong organization: tag editing, garbled-text repair, and stale cleanup in one place
  • Consistent cross-platform: the same experience on macOS, Windows, and Linux

System Requirements

Item Requirement
OS macOS (Apple Silicon), Windows, Linux
Runtime The installer bundles its runtime; source builds need Node.js 24+
Native dependency better-sqlite3 needs platform build tools
Network Required for online lyric and cover matching

Notes

  • The macOS installer supports Apple Silicon (arm64) only
  • The build is not Apple-notarized, so the first launch may require right-clicking to open or clearing the quarantine attribute
  • Batch lyric and cover matching are mutually exclusive

Release history

Sort