Square README

The project's README from github.com/Lelonio/Square. As one markdown file: README.md.

Square

An unofficial Android music client for Spotify Premium and YouTube Music, built in Liquid Glass.

Latest release Downloads Android 8.0 or later Licence

Download · Features · First launch · FAQ · Telegram community · Building

Player Lyrics Effects
The player Synced lyrics The effects panel
Artist Album Glass settings
An artist's page An album The glass settings

Features

Two sources, one app

Player

Audio effects

Lyrics

Library and discovery

Offline

Spotify extras

Android Auto

Look and language

Download

Get it on Orion Store

Or

Download the APK from the latest release and install it. Square needs Android 8.0 or later.

Square updates itself: it checks for new releases and installs them from the settings. It is not on the Play Store and cannot be; see the disclaimer.

The first minutes after installing are slower

Android takes a while to optimise a freshly installed app, and until it does the interface is noticeably slower. To do it straight away, open the app once and give it a few seconds, then run this with the phone connected:

adb shell cmd package compile -m speed-profile -f dev.lelonio.square

Run before the app has been opened, the command finds nothing to compile.

First launch

Square first asks where the music should come from. You can change it later in the settings.

FAQ

Square does not appear in Android Auto. Android Auto only lists apps installed from the Play Store. Turn on "Unknown sources" in Android Auto's developer settings and Square shows up.

Can I use a free Spotify account? No. A free account can sign in, but Spotify only streams to a client like this one with Premium. YouTube Music works with no account at all.

YouTube Music search works, but songs do not play. YouTube changes how its streams are served every so often. Update to the latest release, which is usually where the fix is.

Disclaimer

Square is not affiliated with, endorsed by or connected to Spotify or Google. Both sources are used on terms they do not offer: Square re-implements Spotify's protocol, which Spotify's Terms of Service forbid, and reads YouTube Music through the private endpoints its own web client uses. It cannot be published on the Play Store, and you use it at your own risk. There is no warranty of any kind; see the licence.

Help and feedback

The same two links are in the app, under Settings → About.

Support

Square is free and has no ads. If it is useful to you, you can support its development on Ko-fi.

Credits

Project Licence How it is used
librespot MIT The Spotify engine. librespot-core, librespot-playback and librespot-connect are vendored with local patches.
Spotify Web Playback SDK Spotify Developer Terms Playback for accounts Spotify refuses audio keys, through the listener's own developer app.
Metrolist GPL-3.0 Its InnerTube client, vendored as innertube/, because it is published nowhere else. Powers the signed-in YouTube Music library.
NewPipeExtractor GPL-3.0 Anonymous YouTube Music search and stream URLs.
lossless.wtf n/a Synced lyrics timed to the word, asked first on both sources.
LrcLib n/a Synced lyrics for the YouTube Music source, over its open API.
Spicy Lyrics AGPL-3.0 The lyrics animation, ported to Compose by @donutnotnut in #50.
Bungee MPL-2.0 Time stretching, fetched at build time.
AndroidLiquidGlass Apache-2.0 The glass material; the catalog components are copied with their notice.
Phosphor Icons MIT Every icon in the app.
ebur128 MIT Loudness of local files, so they play at the level of the streamed tracks.
librespot-java Apache-2.0 The listening-event format, re-implemented from its EventService rather than copied.
go-librespot and go-librespot-termux GPL-3.0 The remote sleep timer's command and state fields, the check on truncated audio keys, and how Spotify's DJ is resolved and voiced (the session service, client-tts, the narration metadata), re-implemented from their findings rather than copied.

Building from source

Requirements, build steps, signing, the architecture and notes on the code are in docs/DEVELOPMENT.md.

Licence

GPL-3.0-or-later. See LICENSE.

The lyrics view, LyricsView.kt, is ported from Spicy Lyrics and stays under AGPL-3.0, combined with the rest as section 13 of both licences allows.

Square (Lelonio/Square)

Searching Database…

363 ·GitHub

Unofficial YouTube Music / Spotify Premium client for Android, built in Liquid Glass. Audio effects, Spotify Connect, listening history, 8 languages. Rust core on librespot.

Creator
Lelonio
Size
20.6 MB
Stars
363
Age
2mo
Commits · 90 Days