Skip to content

hihilabs/edit.music

Repository files navigation

edit.music

Mobile-first audio tag editor with preview player for self-hosted music libraries.

  • Browse your library, tap a track, edit tags
  • MusicBrainz lookup — one-tap suggestions from the community database, no account needed
  • Preview player with queue, swipe navigation, album art
  • Recycle bin browser — rescue tracks deleted by Lidarr/Beets before they're gone
  • Works as a PWA (Add to Home Screen on iOS/Android)
  • Supports MP3, FLAC, M4A, OGG, WAV, AIFF

Install

Pick the option that matches where your music lives.

Platform Best for Get it
Windows Music on a local/external drive edit-music.exe from Releases
macOS Music in your home folder edit-music.dmg from Releases
Linux Music on a local/external drive .deb (Debian/Ubuntu) or .tar.gz (any distro) from Releases
Unraid / Docker Music on a NAS / server share ghcr.io/hihilabs/edit.music:latest (below)

Windows (PC)

  1. Download edit-music.exe from the latest release.
  2. Double-click it. A console window stays open and your browser opens to http://localhost:3001. (The exe is unsigned, so Windows SmartScreen may warn — choose More info → Run anyway.)
  3. On first run, point it at your local music folder, e.g. C:\Users\you\Music. The recycle-bin path auto-fills next to it — accept it or change it.

Settings are saved in an edit-music-data folder next to the exe, so you only do setup once. The app reads and writes tags directly on your local files — no Docker, no network share required.

macOS

  1. Download edit-music.dmg, open it, drag edit-music out.
  2. First launch: right-click → Open (unsigned app).
  3. Point it at e.g. /Users/you/Music on first run.

Linux

Two options — pick whichever fits your setup:

Debian/Ubuntu (.deb)

  1. Download edit-music-linux-x64.deb from the latest release.
  2. Install it: sudo apt install ./edit-music-linux-x64.deb (or sudo dpkg -i edit-music-linux-x64.deb).
  3. Launch edit.music from your application menu, or run edit-music from a terminal. Your browser opens to http://localhost:3001.

Any distro (.tar.gz)

  1. Download edit-music-linux-x64.tar.gz from the latest release and extract it: tar -xzf edit-music-linux-x64.tar.gz.
  2. Make it executable and run it: chmod +x edit-music && ./edit-music. Your browser opens to http://localhost:3001.

On first run (either option), point it at your local music folder, e.g. /home/you/Music. The recycle-bin path auto-fills next to it — accept it or change it. Settings are saved in an edit-music-data folder next to the binary, so you only do setup once. The app reads and writes tags directly on your local files — no Docker, no network share required.

Unraid / Docker

services:
  edit-music:
    image: ghcr.io/hihilabs/edit.music:latest
    restart: unless-stopped
    ports:
      - "3333:3001"
    volumes:
      - /path/to/music:/storage/music
      - /path/to/recycle:/storage/recycle_bin   # optional

On Unraid, see docker-compose.unraid.yml for a ready-made config with /mnt/user/music mounts and optional Traefik labels. When MUSIC_ROOT and RECYCLE_ROOT are set as env vars the setup wizard is skipped.

Genre Wiki Reporting (opt-in)

During setup (or anytime in settings) you can opt in to "Help grow the Genre Wiki" — periodically sharing anonymized genre statistics (genre names and how often they appear together — never file paths, file names, or other personal data) to wiki.communityplaylist.com. This helps the community Genre Wiki grow from real-world libraries instead of relying on a single source. It's off by default and can be toggled at any time.

Development

git clone https://github.com/hihilabs/edit.music
cd edit.music
./dev.sh        # starts server :3001 + Vite :5173

Set MUSIC_ROOT and RECYCLE_ROOT in server/.env to point at your library:

MUSIC_ROOT=/mnt/user/music
RECYCLE_ROOT=/mnt/user/music/.recycle

Stack

  • Server — Node.js + TypeScript + Express, music-metadata (read), node-taglib-sharp (write), MusicBrainz REST API
  • Client — React 18 + Vite PWA, zero UI framework dependencies

MusicBrainz

Metadata suggestions are powered by MusicBrainz, the open community music database. Results are proxied through the local server to respect the 1 req/sec rate limit. No account or API key required.

License

MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages