Skip to content

nixpin/websonic

Repository files navigation

WebSonic — Digital Jukebox Interface

A high-fidelity, analog-inspired web remote for Subsonic-compatible music servers (optimized for Gonic).

🌐 Demo

websonic.pages.dev

Important

A running Gonic or other Subsonic-compatible server is required for the demo to function.

Player View Analog interface with Gold accents

Library View Detailed library and queue view

🛠 Features

Warning

⚠️ Under Development: This project is in an early development stage! 🚀

🛠 Road Map

  • Base Layout (Analog Equipment UI)
  • Auth (Subsonic Integration)
  • Music Library
    • Artists, Genres, Playlists listing pages
    • Filter by Artists
    • Search (hybrid)
  • Queue Management (Add, Remove, Reorder, Play)
  • Now Playing (Album Art, Song Info, Progress Bar)
  • Playback Controls (Play, Pause, Next, Previous)
  • Playlist Management (Create, Edit, Delete, Play)
  • Mobile version
  • Integration with DSP (Digital Signal Processing)
  • Favorites
  • Rating
  • Track Pre-listening / Previewing
  • Internet Radio Stations
  • Repeat mode (?)
  • Lyrics
  • High quality theme redesign
  • Refactor code
  • Multi-server Support (Add, Remove, Switch)

📦 Getting Started

Installation

  1. Clone the repository
  2. Install dependencies: npm install
  3. Run development server: npm run dev

Docker Support

Quick Start with Docker Hub (Pre-built image):

docker run -d -p 8080:80 --name websonic imone/websonic:dev

Build and run from source:

  1. Build the image (from the project root):
docker build -t websonic -f docker/Dockerfile .

2. Run the container:

docker run -d -p 8080:80 --name websonic-app websonic

Your Jukebox will be available at http://localhost:8080 (you can change 8080 to any port you like).

About

Web panel to manage subsonic server player (jukebox mode)

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages