Koel
A web-based personal audio streaming service with a beautiful UI, powered by Vue and Laravel.
Smart Download
Visit Project Homepage
No installer available yet — head to the source repository
Host your own private music streaming server with a modern web interface.
Core Features
- Modern Vue + Laravel frontend
- Supports MP3, FLAC, OGG and more
- Playlist management & search
- Official mobile app (iOS & Android)
- Self-hosted for full privacy control
What It Can't Do
- •Requires server administration knowledge; no built-in music; mobile web is limited, use official app for best experience.
Use Cases
- Replace cloud music services with your own private server
- Share music library across devices in a home network
Detailed Introduction
Koel is a simple, self-hosted personal audio streaming service that lets you listen to your music collection from anywhere. Built with Vue.js on the front-end and Laravel on the back-end, it offers a modern, responsive interface for browsing, searching, and playing music. Koel supports various audio formats, provides playlist management, and has an official mobile app for iOS and Android. It targets web developers and music enthusiasts who want full control over their music library without relying on cloud services.
Troubleshooting & FAQ (2)
TroubleshootingHow do I fix Koel scan not removing deleted songs from the database?
This happens when the post-scan event listeners do not run because required Laravel environment variables are missing, especially QUEUE_CONNECTION. Compare your .env file with .env.example and add the Laravel-specific variables from the bottom of the example file. For a standard Koel/Docker setup without a separate queue worker, ensure QUEUE_CONNECTION=sync. Then restart the container and rescan:
docker restart <koel-container>
docker exec -it <koel-container> php artisan koel:scan
After the scan, songs whose files have been removed from storage should be deleted from the songs table and disappear from the web interface.
TroubleshootingHow to fix 'Server error' when uploading large FLAC/audio files to Koel (50MB limit)?
Koel's default 50MB upload cap comes from PHP's upload_max_filesize and post_max_size settings. To raise it:
1. Copy .htaccess.example from the Koel repo root to .htaccess (if not already present).
2. Edit the values at the bottom, changing 50M to your desired limit, e.g.:
php_value upload_max_filesize 800M
php_value post_max_size 800M3. Save the file — Apache picks up
.htaccess changes immediately, no restart needed.
Note: If you use the official Koel Docker image, its bundled php.ini already sets the limit to 800M, so align your .htaccess with that value. Also, if you proxy through Cloudflare, the free tier caps request/response sizes at 100MB — temporarily disable the Cloudflare proxy (DNS-only mode) when uploading files larger than that.
Tags
Getting Started
Download installer
Click the button above to download the installer for your system
Install the software
Double-click the downloaded installer and follow the prompts
Step 1: Ensure PHP 8.1+, MySQL/MariaDB, and Composer are installed
Step 2: Clone the repo and run composer install
Step 3: Run php artisan koel:init to set up the database
- Step 1: Ensure PHP 8.1+, MySQL/MariaDB, and Composer are installed
- Step 2: Clone the repo and run composer install
- Step 3: Run php artisan koel:init to set up the database
Checksum not available
This project has not published a SHA-256 checksum on its GitHub Release page
SHA256 Checksum
No checksum available
Download directly from GitHub Releases and verify file integrity yourself
All SHA-256 checksums on this platform are extracted from the project's official GitHub Release page, without any modification. You can independently verify them on the GitHub Releases page.
Open Source Transparency
View GitHub SourceUninstall Info
Delete the project directory and drop the Koel database. For Docker setups, remove containers and images.
No Extra Dependencies
Ready to use after download. No additional runtime required.
Having issues? Check the FAQ below
2 FAQs
Similar Projects
Huginn
Huginn lets you build agents that automate online tasks. Events propagate through a directed graph. Monitor web, Twitter, email, and more.
RSSHub
RSSHub is the world's largest open-source RSS network. It generates RSS feeds from virtually any website, with over 5,000 instances and a thriving community. Perfect for aggregating social media, news, blogs, and more.
PowerToys
A set of utilities for power users to tune and streamline their Windows experience for greater productivity.