🎵 Muorg - The Music Organizer from Hell

A cross-platform app for organizing MP3 and FLAC music libraries, available on desktop, Android, and the web. A dense, keyboard-friendly, library-style UI - not a minimal player, but a serious tool for keeping your collection clean and consistent across every device.

Pronounced "Mu-Ork" - think of a Musical Ork who organizes your music.
Muorg icon
Platforms: Desktop (macOS · Windows · Linux) · Android · Web · self-hosted server

One product, four moving parts

Muorg is a single product made of a few components that share the same music library and metadata model. Run the desktop app on its own, or add the server to sync your library across every device.

🖥️ Desktop app

macOS · Windows · Linux — Tauri 2 + Vue 3 + Rust

The flagship app. It bundles muorg-server as a sidecar, so it works fully offline in Local mode, or points at a remote server in Online mode.

🛰️ Server (API / backend)

Rust + Axum REST API

The headless backend. Indexes your library into SQLite and exposes tracks, search, playlists, ratings, metadata editing, and audio/Chromecast streaming over HTTP. Self-host it with Docker on a NAS or home server; every other client connects to it.

📱 Android app

Kotlin + Jetpack Compose

A native mobile client with Media3/ExoPlayer playback, Retrofit for the API, Room for offline caching, and Chromecast support. Connects to muorg-server to browse, search, and play your library on the go.

🌐 Web client

Vue 3 + Vite PWA

An installable browser UI served via nginx. Talks to the same muorg-server API, giving you full library access from any device without installing a native app.

Features

  • Library management - Add folders (or drag-and-drop); Muorg scans for .mp3 and .flac and builds a persistent catalog in SQLite. Rescan or remove folders from the sidebar. Hide/show folders; expand or collapse all groups.
  • Library view - Table with album art, title, artist, album, year, duration, format, and path. Full-text search across title, artist, and album. Group by album or artist with collapsible headers. Multi-select (Ctrl+A) for bulk actions.
  • Metadata editor - Edit title, artist, album, album artist, year, genre, track/disc number, and album art. Bulk edit: select multiple tracks and change only the fields you want - other fields stay per-track.
  • Smart Suggestions - Define how your file paths are structured, then apply it to auto-fill tags from any track's path. Keeps tags consistent with your folder layout. Example patterns:
    • Artist / Album / TrackNumber - TrackTitle
    • Artist / Year - Album / TrackNumber - TrackTitle
    • Artist / TrackTitle
  • Playlists - Create, rename, delete, and export playlists to M3U. Add tracks via context menu or drag-and-drop.
  • Queue & Playback - Reorderable queue, shuffle, continuous playback, and a maximized player with full-screen album art tinted gradient.
  • Reports - Sidebar panels for missing metadata, duplicate tracks, and missing album covers. Configurable and clickable to jump directly to the offending track.
  • Theming - Auto (system), Dark, Light, Orkish (green), and DOOM. Fully configurable layout, column widths, and panel sizes - all persisted.
  • Keyboard-first - Every major action has a shortcut. Ctrl+K opens the full key map.

Screenshots

Main library view:

Muorg library view

Metadata editor with tag fields and album art:

Muorg metadata editor

Compact player bar and maximized full-screen player:

Muorg player bar

Muorg maximized player

Theme settings and Smart Suggestions:

Muorg theme settings

Key map (Ctrl+K):

Muorg key map

Tech Stack

Tauri Tauri 2 - Rust-powered desktop shell; native installers for macOS, Windows, and Linux with auto-update support
Vue Vue 3 - Component-based frontend running in the Tauri WebView
TypeScript TypeScript - Typed frontend throughout; interfaces mirror Rust types
Tailwind CSS Tailwind CSS - Utility-first styling with theme-aware classes
Pinia Pinia - State management for catalog, settings, and playlists
SQLite SQLite - Persistent catalog of tracks, roots, and playlists via Rust's rusqlite
Rust Rust - Backend logic: ID3 metadata (MP3), Vorbis/FLAC metadata, file scanning, and all 21 Tauri commands

CI/CD Status

Source Code

The project is open source and available on GitHub