# navidrome/navidrome

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/navidrome-navidrome).**

19,365 stars · 1,375 forks · Go · gpl-3.0

## Links

- GitHub: https://github.com/navidrome/navidrome
- Homepage: https://www.navidrome.org
- awesome-repositories: https://awesome-repositories.com/repository/navidrome-navidrome.md

## Topics

`airsonic` `madsonic` `media-server` `music` `music-server` `navidrome` `opensubsonic` `raspberry-pi` `self-hosted` `streamer` `streaming-api` `streaming-audio` `subsonic` `subsonic-server`

## Description

Navidrome is a self-hosted music streaming server designed to organize, index, and stream personal digital music collections. It functions as a centralized audio streaming platform that manages local audio files, automatically enriching them with metadata and artwork while providing a web interface for playback. The system supports multi-user access, allowing administrators to manage separate collections and listening histories with granular permissions.

The platform distinguishes itself through its compatibility with the Subsonic API, enabling users to connect a wide range of third-party music players and mobile applications to their library. It features an event-driven library scanner that monitors file system changes in real-time and performs on-demand audio transcoding to ensure compatibility across various devices and network conditions. Users can further extend the server's capabilities through a plugin architecture that supports custom metadata agents, scrobblers, and event handlers.

Beyond core streaming, the software includes administrative tools for managing user accounts, security, and data resilience. It supports reverse-proxy authentication for single sign-on integration and provides command-line utilities for service lifecycle control. The server also manages public sharing links, dynamic playlist synchronization, and listening history tracking.

The application is distributed as a single binary, simplifying deployment across various hosting environments, including containerized and custom setups. It includes built-in performance optimizations for image delivery and security measures such as brute-force protection to safeguard access.

## Tags

### Business & Productivity Software

- [Personal Media Managers](https://awesome-repositories.com/f/business-productivity-software/personal-media-managers.md) — Provides a centralized platform for organizing, indexing, and managing personal digital music collections with automated metadata and artwork enrichment.

### Graphics & Multimedia

- [Music Streaming Interfaces](https://awesome-repositories.com/f/graphics-multimedia/audio-music/music-utilities/music-streaming-interfaces.md) — Acts as a personal music streaming platform that organizes local audio files and serves them to clients via the Subsonic API.
- [Self-Hosted Streaming Servers](https://awesome-repositories.com/f/graphics-multimedia/audio-music/music-utilities/music-streaming-interfaces/self-hosted-streaming-servers.md) — Enables hosting and streaming of personal music collections to web browsers and mobile devices via a centralized server.
- [Audio Streaming Servers](https://awesome-repositories.com/f/graphics-multimedia/streaming-distribution/streaming-broadcasting/media-servers/audio-streaming-servers.md) — Functions as a centralized audio streaming server with support for on-the-fly transcoding, multi-user access, and metadata enrichment.
- [Collection Managers](https://awesome-repositories.com/f/graphics-multimedia/audio-music/music-utilities/collection-managers.md) — Indexes, tags, and organizes local audio files into searchable collections with automated metadata and artwork synchronization.
- [Transcoding Engines](https://awesome-repositories.com/f/graphics-multimedia/audio-music/audio-playback/transcoding-engines.md) — Performs on-the-fly audio transcoding to ensure compatibility with various client devices and network conditions.
- [Format Converters](https://awesome-repositories.com/f/graphics-multimedia/audio-music/audio-processing/format-converters.md) — Converts audio files to different formats or bitrates on the fly for playback compatibility.
- [Transcoders](https://awesome-repositories.com/f/graphics-multimedia/streaming-distribution/streaming-broadcasting/media-streaming/transcoders.md) — Performs on-the-fly audio transcoding to ensure compatibility with various client devices and bandwidth constraints. ([source](https://www.navidrome.org/docs/overview/))
- [Metadata Tagging](https://awesome-repositories.com/f/graphics-multimedia/audio-music/audio-processing/metadata-tagging.md) — Reads and maps standard and custom audio file tags to organize collections, supporting multi-valued fields for complex metadata. ([source](https://www.navidrome.org/docs/usage/library/tagging/))

### Software Engineering & Architecture

- [Compatibility Layers](https://awesome-repositories.com/f/software-engineering-architecture/compatibility-layers.md) — Implements a Subsonic-compatible API layer to enable interoperability with third-party music players.
- [Plugin-Based Architectures](https://awesome-repositories.com/f/software-engineering-architecture/software-architecture/architectural-patterns/plugin-module-systems/modular-plugin-architectures/plugin-based-architectures/plugin-based-architectures.md) — Supports a secure plugin architecture for custom metadata providers, scrobblers, and event handlers.

### Web Development

- [Third-Party API Integrations](https://awesome-repositories.com/f/web-development/third-party-api-integrations.md) — Provides a standardized API for third-party music clients to browse, stream, and manage media collections. ([source](https://www.navidrome.org/docs/developers/subsonic-api/))

### Content Management & Publishing

- [Media Servers](https://awesome-repositories.com/f/content-management-publishing/media-management/media-servers.md) — Provides a web interface and API compatibility for browsing and playing personal music collections as a self-hosted media server.
- [Media Content Managers](https://awesome-repositories.com/f/content-management-publishing/content-management-systems/content-architecture-modeling/content-organization-systems/media-content-managers.md) — Manages cover art for artists and albums with support for automatic scanning and manual uploads. ([source](https://www.navidrome.org/docs/usage/library/))
- [Multi-Library Managers](https://awesome-repositories.com/f/content-management-publishing/media-management/audiobook-servers/e-book-servers/comic-book-libraries/personal-library-managers/multi-library-managers.md) — Allows the organization of music into distinct, named libraries with granular access controls to restrict or grant visibility to specific media sets. ([source](https://www.navidrome.org/docs/usage/features/multi-library/))

### Security & Cryptography

- [User Access Management](https://awesome-repositories.com/f/security-cryptography/user-access-management.md) — Maintains separate music collections and listening histories for multiple users with granular permissions. ([source](https://www.navidrome.org/docs/usage/))
- [Reverse Proxy Authentication](https://awesome-repositories.com/f/security-cryptography/reverse-proxy-authentication.md) — Delegates user identity verification to external services via security headers for single sign-on integration.
- [Single Sign-On Providers](https://awesome-repositories.com/f/security-cryptography/single-sign-on-providers.md) — Integrates with external identity providers to manage user access through centralized single sign-on services. ([source](https://www.navidrome.org/docs/getting-started/))
- [Brute Force Protections](https://awesome-repositories.com/f/security-cryptography/brute-force-protections.md) — Implements security measures to throttle login attempts and block suspicious IP addresses, protecting user accounts from unauthorized access. ([source](https://www.navidrome.org/docs/usage/configuration/options/))

### Data & Databases

- [Relational Metadata Storage](https://awesome-repositories.com/f/data-databases/data-engineering-infrastructure/data-persistence-storage/data-storage-layers/relational-metadata-storage.md) — Uses a relational database to map file tags and persistent identifiers for efficient library organization.
- [Backup and Recovery](https://awesome-repositories.com/f/data-databases/backup-and-recovery.md) — Automates database snapshots and provides tools to restore, prune, and export application state. ([source](https://www.navidrome.org/docs/usage/admin/cli/))
- [Data Enrichment Services](https://awesome-repositories.com/f/data-databases/data-enrichment-services.md) — Automatically fetches artist biographies and album artwork from external services to enrich local library metadata. ([source](https://www.navidrome.org/docs/usage/configuration/options/))

### System Administration & Monitoring

- [Library Maintenance](https://awesome-repositories.com/f/system-administration-monitoring/library-maintenance.md) — Monitors local directories for changes and automatically updates the internal database to reflect new, modified, or removed audio files. ([source](https://www.navidrome.org/docs/usage/admin/cli/))
- [File System Scanners](https://awesome-repositories.com/f/system-administration-monitoring/file-system-scanners.md) — Monitors local file system changes in real-time to automatically update the library database.

### Development Tools & Productivity

- [Plugin Systems](https://awesome-repositories.com/f/development-tools-productivity/plugin-systems.md) — Features a secure plugin system for extending core functionality with custom modules. ([source](https://www.navidrome.org/docs/usage/features/))
- [Single-Binary Distributions](https://awesome-repositories.com/f/development-tools-productivity/single-binary-distributions.md) — Distributed as a single binary to simplify deployment and dependency management across platforms.

### DevOps & Infrastructure

- [Playlist Synchronization](https://awesome-repositories.com/f/devops-infrastructure/remote-server-synchronization/playlist-synchronization.md) — Supports dynamic playlist creation, import, export, and synchronization across devices. ([source](https://www.navidrome.org/docs/usage/features/))
