A minimal, mobile-ready, album-centered music client for subsonic compatible music servers.

Overview

Soniclair

Build Android

An album-centered subsonic client for PWA, Android, Android TV and Desktop

SonicLair is a minimal, mobile-ready, album-centered music client for subsonic compatible music servers built on top of Capacitor and Tauri

Features

  • Connect to any subsonic-compatible music server. Tested on Navidrome.
  • Browse your music collection by Artist or Album.
  • Album-centered music playing: if you start playing a song, the album becomes your playlist.
  • Start a radio based on any song on your library.
  • Search throughout your entire music library.
  • Android Auto support. (You can use it enabling Developer Mode and Unknown Sources in Android Auto, here is a tutorial to do so, thanks to the folks at Ultrasonic)
  • Android TV support.
  • [Android TV] Connect your TV to your server using your phone and a QR Code. (All the communications are made within the LAN, no third-party servers involved)
  • [Android TV] Jukebox Mode! Run an instance of Soniclair in an Android TV and control it from another instance running on Android. No support for PWA clients as of yet.

Screenshots

Phone

TV

Installation and Usage

  • To use the PWA version of the app, you can go to Soniclair, thanks to the fine folks at Vercel. Remember that using this version of the app needs your server to use encryption, i.e. it needs to use an https://{domain}, because modern browsers don't support connection downgrading.
  • If you'd like to use the Android version, you can download the APK (self signed) from here, built by Github Actions from this very source code. No Google Play Store as of yet.

Roadmap

  • Chromecast support

Projects leveraged here

Soniclair is built upon

Contribute

I'm not planning on receiving contributions yet, although you can fork this repo at your heart's desire! Soon, though.

License

MIT, see LICENSE for more info. But basically, you can do whatever you want with this code.

Comments
  • Add a switch for password based authentication

    Add a switch for password based authentication

    Hello, Thanks for your work. It would be great if you can support the password authentication ('p' parameter) scheme.

    Using the hashed+salted scheme prevent the server from:

    • storing passwords hashed+salted
    • forwarding authentication requests (PAM, LDAP, etc.)
    enhancement 
    opened by epoupon 3
  • Google assistant support on mobile

    Google assistant support on mobile

    I would like to know if your app can respond to requests to play songs, albums, etc made through the Google Assistant on the phone.

    Can I say "play enter sandman on SonicLair" and Google Assistant will open SonicLair and play that song?

    opened by phirestalker 0
  • Please add a library browser and a

    Please add a library browser and a "random albums" list on the home page.

    Hi,

    Looks like a great start to a client!

    Would it be possible to add a library browser and a "random albums" list on the home page please?

    Thanks

    opened by vext01 0
  • Android TV app does not let me sign in

    Android TV app does not let me sign in

    Device: Sony Bravia X750H Android TV OS Version: 11

    I tried signing in by typing the authentication details and it signed in and crashed on the home page. It crashes on relaunch.

    I cleared data and reinstalled it and tried to sign in using the QR method, and it gives me the error Value null of type org.json.JSONObject$1 cannot be converted to JSONArray.

    opened by AvMavs 1
  • Publishing on the official F-Droid repository

    Publishing on the official F-Droid repository

    opened by alexanderadam 1
  • TV version cache settings

    TV version cache settings

    Hello I've been looking for an app with a TV version for a long time Thanks for your work. But I have a little problem The TV version doesn't seem to have cache settings It makes me a little lag Could you add this feature? Thank you.

    opened by WZZan 1
Releases(v0.0.6-3)
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
iCloud Shared Album → GitHub Action → Jekyll data files

stories-feed-action A GitHub Action that fetches a from an iCloud shared album, commits the images into the repository, and then generate a data file

Mu-An Chiou 12 Nov 24, 2022
Chromium extension for displaying all the available formats of an AppleMusic album.

AppleMusic-Formats-Extension Chromium extension for displaying all the available formats of an AppleMusic album. Before Vs After How to Install? From

bunny 7 Dec 16, 2022
A fast Protocol 6 Agar.io client for private servers

Cigar3 A fast Protocol 6 Agar.io client for private servers Getting started. After installing nodejs, run npm install and npm run cigar3 in a terminal

Lenny 5 Mar 6, 2022
Proof of concept: support immutable trpc servers using lambdas to ensure client/server compatibility

auto-versioned-trpc-aws-lambda Proof of concept to support an automatically versioned AWS Lambda running tRPC to ensure a somewhat graceful and automa

Kenneth Skovhus 5 Aug 30, 2022
🟢 Music player app with a modern homepage, fully-fledged music player, search, lyrics, song exploration features, search, popular music around you, worldwide top charts, and much more.

Music-player-app see the project here. 1. Key Features 2. Technologies I've used Key Features: ?? Fully responsive clean UI. ?? Entirely mobile respo

suraj ✨ 3 Nov 16, 2022
zkPoB is a mobile compatible tool that lets anyone prove they own a Bufficorn (or any NFT) without revealing which Buffi they own or the address they are verifying themselves with

zkPoB is a mobile compatible tool that lets anyone prove they own a Bufficorn (or any NFT) without revealing which Buffi they own or the address they are verifying themselves with

Marto.eth 10 Aug 25, 2022
Gatsby-starter-minimal-blog - Typography driven, feature-rich blogging theme with minimal aesthetics.

Gatsby-starter-minimal-blog - Typography driven, feature-rich blogging theme with minimal aesthetics. Includes tags/categories support and extensive features for code blocks such as live preview, line numbers, and line highlighting.

Priya Chakraborty 0 Jan 29, 2022
Generate type definitions compatible with @kintone/rest-api-client

kintone-form-model-generator Generate type definitions compatible with @kintone/rest-api-client Prerequirements Node.js (>=12) Install # Install npm i

Yuuki Takahashi 5 Dec 15, 2022
This is an application that entered the market with a mobile application in real life. We wrote the backend side with node.js and the mobile side with flutter.

HAUSE TAXI API Get Started Must be installed on your computer Git Node Firebase Database Config You should read this easy documentation Firebase-Fires

Muhammet Çokyaman 4 Nov 4, 2021
Smooth mobile touch slider for Mobile WebApp, HTML5 App, Hybrid App

iSlider iSlider is a lightweight, high-performant, no library dependencies cross-platform slide controller. It can help handling most sliding effects,

Baidu BEFE 1.7k Nov 25, 2022
Fast and minimal JS server-side writer and client-side manager.

unihead Fast and minimal JS <head> server-side writer and client-side manager. Nearly every SSR framework out there relies on server-side components t

Jonas Galvez 24 Sep 4, 2022
A minimal yet powerful HTTP client/API testing tool made for speed.

req req is a lightweight, minimal yet powerful HTTP client slash API testing tool designed for speed. Contents Features Installation Documentation Con

Siddharth 37 Aug 29, 2022
A simple dashboard to keep track of all your active devices/servers

Slashboard Pulsar A lightweight node js app designed to work with the Slashboard desktop client Built using Node.js Installation Clone this repository

Philippe Négrel-Jerzy 25 Dec 21, 2022
Ping.js is a small and simple Javascript library for the browser to "ping" response times to web servers in Javascript

Ping.js Ping.js is a small and simple Javascript library for the browser to "ping" response times to web servers in Javascript! This is useful for whe

Alfred Gutierrez 353 Dec 27, 2022
Automatic Role Adder Is Usually Used In Coding Servers Which Give Access To Codes By Subbing To Their Channel So This Helps Them To Auto Role People :)

Automatic Role Adder Setup Guide Automatic Role Adder Is Usually Used In Coding Servers Which Give Access To Codes By Subbing To Their Channel So This

NotJust 25 Dec 23, 2022
next-graphql-server is a library for building production-grade GraphQL servers using Next.js with API Routes

next-graphql-server next-graphql-server is an easy to use Next.js library for creating performant GraphQL endpoints on top of Next.js API Routes. Star

Jakub Neander 82 Nov 21, 2022