Skip to main content

Easily host karaoke events

Project description

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

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

and then run via:

syng server

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

There exists one optional dependency for the server: alt-profanity-check. If this package is installed, each username is checked for profanity, otherwise no such check happens.

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 or restricted.

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

Configuration

See Website.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

syng-2.3.0.tar.gz (2.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

syng-2.3.0-py3-none-any.whl (3.1 MB view details)

Uploaded Python 3

File details

Details for the file syng-2.3.0.tar.gz.

File metadata

  • Download URL: syng-2.3.0.tar.gz
  • Upload date:
  • Size: 2.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.21 {"installer":{"name":"uv","version":"0.9.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Fedora Linux","version":"43","id":"","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for syng-2.3.0.tar.gz
Algorithm Hash digest
SHA256 64a3fe6571ff9c336890752240507d733004fb47275d7c9fde574f424838a26b
MD5 41591ca83d17f678997c704086570868
BLAKE2b-256 5f666c452f8ec2f0a91e4ee7881e62d485cb8ea3358838da005f9c2b43a759c5

See more details on using hashes here.

File details

Details for the file syng-2.3.0-py3-none-any.whl.

File metadata

  • Download URL: syng-2.3.0-py3-none-any.whl
  • Upload date:
  • Size: 3.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.21 {"installer":{"name":"uv","version":"0.9.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Fedora Linux","version":"43","id":"","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for syng-2.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 851176dfabe6322917c630a5ed0a65c3f82c43607d8203db851e691cf5f4dad2
MD5 ccc2a0b3a12096fba7c98ad9358326ad
BLAKE2b-256 24c5b75b9cfbc89656ca5dfedb9397c4ac5ec1060595ef41b0dd059a4ecca46b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page