Skip to main content

Easily host karaoke events

Matrix Mastodon Follow PyPI - Version Flathub Version PyPI - License Website Forgejo Pipeline Status

Syng.Rocks! is an all-in-one karaoke software, consisting of a backend server, a web frontend and a playback client. Karaoke performers can search a library using the web frontend, and add songs to the queue. The playback client retrieves songs from the backend server and plays them in order.

You can play songs from YouTube, an S3 storage or simply share local files.

The playback client uses mpv for playback and can therefore play a variety of file formats, such as mp3+cdg, webm, mp4, ...

Join our matrix room or follow us on mastodon for update notifications and support.

Screenshots

Main Window Main Window (Advanced)

Web Interface Web Interface on Mobile

Player (next up) Player playing a song

Client

Get in on Flathub

To host a karaoke event, you only need to use the playback client. You can use the publicly available instance at https://syng.rocks as your server.

Installation

Linux

The preferred way to install the client is via Flathub.

Alternatively Syng.Rocks! can be installed via the Python Package Index (PyPI). When installing the client it is mandatory to include the client flag:

pip install 'syng[client]'

This installs both the playback client (syng client) and a configuration GUI (syng gui).

Note: When installing via PyPI, you need to have libmpv installed on machine of the playback client. Additionally, since version 2.2.1, you also need to have deno installed for proper YouTube support.

The Syng.Rocks! client is also packaged for Arch Linux in the Arch Linux user repository. The package is maintaned by topas-rec and not by the Syng.Rocks developers.

Windows

Windows support is experimental, but you can download the current version from Releases. No installation necessary, you can just run the exe.

Usage

See Website.

Server

If you want to host your own Syng.Rocks! server, you can do that, but you can also use the publicly available Syng.Rocks! instance at https://syng.rocks.

Python Package Index

You can install the server via pip:

pip install syng[server]

and then run via:

syng server

The server is also automatically available if you install the client via FlatPak.

Docker

Alternatively you can run the server using docker. It listens on port 8080 and reads a key file at /app/keys.txt when configured as private.

docker run --rm -v /path/to/your/keys.txt:/app/keys.txt -p 8080:8080 ghcr.io/christofsteel/syng -H 0.0.0.0

Arch Linux

The Syng.Rocks! server is also packaged for Arch Linux in the Arch Linux user repository. The package is maintaned by topas-rec and not by the Syng.Rocks developers.

Configuration

See Website.

Metadata

Release files for syng 2.4.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for syng 2.4.1
File Size Uploaded
syng-2.4.1.tar.gz 714.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for syng 2.4.1
File Interpreter ABI Platform
syng-2.4.1-py3-none-any.whl Python 3 none any Details

Total release size: 1.4 MB

Release files / syng-2.4.1.tar.gz

Download URL syng-2.4.1.tar.gz
Size 714.7 kB
Tags Source
SHA-256 checksum
How to use checksums
e7bab1a3588d7b20b6684c7cedfee8f1d2224c0f2b11833079c2822a768e6ba9
BLAKE2b-256 checksum
How to use checksums
d58f4e811aa0b7a9496f62b7a314a267ad1943a6b66d2dc66927f38391d4ab87
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / syng-2.4.1-py3-none-any.whl

Download URL syng-2.4.1-py3-none-any.whl
Size 726.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0cc4ddfef975d7fa96a52867e20df968e962139604bdb0cbb158121d3044d9be
BLAKE2b-256 checksum
How to use checksums
67e0293010ccd380e5d128a1fa6c925d324770f491200b6e62c949965a6e4d5c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

2.4.2

2 release files

This release

2.4.1 This release

2 release files

2.4.0

2 release files

2.3.0

2 release files

2.2.2

2 release files

2.2.1

2 release files

2.2.0

2 release files

2.1.0

2 release files

2.0.7

2 release files

2.0.4

2 release files

2.0.3

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page