Awesome
Karaoke Eternal
Host awesome karaoke parties where everyone can easily find and queue songs from their phone's browser. The player is also fully browser-based with support for MP3+G, MP4 videos and WebGL visualizations. The server is self-hosted and runs on nearly everything.
<p align="center"> <i>App in mobile browser (top) controlling player in Firefox/Chrome (bottom)</i> </p>Features
- Supports:
- MP3+G with Winamp/MilkDrop visualizations (WebGL 2)
- MP4 videos
- ReplayGain tags for volume normalization
- Fast, modern mobile browser app designed for "karaoke conditions"
- Multiple simultaneous rooms/queues (optionally password-protected)
- Dynamic queues keep parties fair, fun and no-fuss
- Fully self-hosted
- No ads or telemetry
Microphones are not required since the player itself only outputs music - this allows your audio setup to be as simple or complex as you like. See the F.A.Q. for more information.
Getting Started
Karaoke Eternal basically has 3 parts. See Getting Started to get up and running step-by-step, or jump to the documentation for each part below:
- Server: Runs on pretty much anything to serve the web app and your media files, including a Windows PC, Mac, or a dedicated server like a Raspberry Pi or Synology NAS.
- App: Fast, modern mobile web app designed for "karaoke conditions".
- Player: Just another part of the app, but meant to run fullscreen on the system handling audio/video for a room
Installation
There are several installation methods available for Karaoke Eternal Server.
Discord & Support
Join the Karaoke Eternal Discord Server for general support and development chat, or just to say hi!
Contributing & Development
Contributions are welcome! Please join the #dev
channel of the Discord Server before embarking on major features; the project's scope is limited to ensure success.
Make sure you have Node.js 16 or later, then:
- Fork and clone the repo
npm i
npm run dev
and look for "Web server running at" for the server URL