Repolode
suitux

suitux/Tagr

Self-hosted web app for browsing, playing and editing audio file tags, with changes written back to the music files.

Open-source alternative to:MusicBrainz PicardMp3tag

Stars
250
Forks
8
Open issues
7
Last commit
10 days ago

What is it?

Tagr is a self-hosted music metadata editor that runs in the browser. You point it at one or more music folders, and it indexes the library into a three-panel interface with a folder tree, a song list and a detail editor. Tags can be edited across more than 40 fields, including custom tags, album art, star ratings and track or disc numbers, and changes are written back to the audio files on disk.

Every metadata change is recorded with its old and new values, so individual edits or batches can be reverted. The app also includes a built-in player with a waveform view, listen history, play counts, and optional scrobbling to ListenBrainz. Access is controlled by user accounts with Tagger and Listener roles.

Supported formats include MP3, FLAC, WAV, AAC, OGG, M4A, M4B, WMA, AIFF and Opus. The stack is Next.js, React, Prisma with SQLite, and the audiotagr library for reading and writing tags. Docker images are published for amd64 and arm64.

Key features

  • 01Edit over 40 metadata fields, including custom tags and album art
  • 02Full change history with per-edit or bulk revert
  • 03Built-in player with waveform, listen history and ListenBrainz scrobbling
  • 04Three-panel library browser with filtering, sorting and customizable columns
  • 05Role-based users (admin, tagger, listener)
  • 06Mobile-responsive interface

Use cases

  • Cleaning up and standardizing tags across a large personal music collection
  • Editing metadata on a NAS-hosted library from any browser
  • Reviewing and reverting past tag changes
  • Sharing a read-only listening view with family members as Listener accounts

Quick start

  1. 1

    Download the docker-compose.yml file

    wget https://raw.githubusercontent.com/suitux/Tagr/main/docker-compose.yml
  2. 2

    Generate a secret key and set it, plus admin credentials and music folder, in docker-compose.yml

    openssl rand -hex 32
  3. 3

    Build and run the container

    docker compose up -d
  4. 4

    Open http://localhost:3000, log in and scan the library

Things to know

  • Requires a self-hosted server and manual setup of environment variables and volumes.
  • Licensed under AGPL-3.0, a copyleft license that applies to modified network-served versions.

In collections

Topics

FAQ

What is Tagr?
Self-hosted web app for browsing, playing and editing audio file tags, with changes written back to the music files. Tagr is a self-hosted music metadata editor that runs in the browser. You point it at one or more music folders, and it indexes the library into a three-panel interface with a folder tree, a song list and a detail editor. Tags can be edited across more than 40 fields, including custom tags, album art, star ratings and track or disc numbers, and changes are written back to the audio files on disk.
Is Tagr free to use? What license does it have?
Tagr is open source under the AGPL-3.0 license. Check the license terms before using it in commercial products.
Is Tagr still maintained?
Actively maintained. The last commit to Tagr was on Oct 28, 2026.
What can I use Tagr for?
Cleaning up and standardizing tags across a large personal music collection Editing metadata on a NAS-hosted library from any browser Reviewing and reverting past tag changes Sharing a read-only listening view with family members as Listener accounts
How do I install Tagr?
Download the docker-compose.yml file: wget https://raw.githubusercontent.com/suitux/Tagr/main/docker-compose.yml Generate a secret key and set it, plus admin credentials and music folder, in docker-compose.yml: openssl rand -hex 32 Build and run the container: docker compose up -d Open http://localhost:3000, log in and scan the library
Where can I get Tagr?
The source code and installation instructions are on GitHub: https://github.com/suitux/Tagr

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects