Giter Site home page Giter Site logo

jetispot's Introduction

Jetispot

probably usable UNOFFICIAL Spotify client for Android, built with Jetpack Compose and librespot-java

Spotify Premium account is REQUIRED*. Offline caching, DRM bypassing or raw file downloading is prohibted by ToS and will NEVER be implemented in Jetispot. Don't waste your time trying to request these features.

What's working:

  • sign in (login/pass only, no FB/Meta/whatsoever support, no Smart Lock either)
  • "browse", "home", album, premium plan, artist and genre screens (some of the blocks might be unsupported)
  • library: "liked songs" w/ tag&sort support, rootlist (liked playlists) + pins + artist/album support w/ nice animations, delta updates + pub/sub processing support
  • basic playback w/ Spotify Connect support (connect support is very WIP)
  • fairly optimized R8 rules, providing approx. 5-6 megabytes release APK size (with the playback and protobuf parts!)

What's in progress:

  • "Now Playing" improvements
  • better service (notification improvements)

Application stack:

  • playback: librespot-java as the core + sinks/decoders from librespot-android + Media2 for the mediasession support
  • UI: Jetpack Compose
  • DI: Hilt/Dagger
  • network: Retrofit w/ Moshi+Protobuf converters
  • pictures: Coil
  • storage: Room (collection), MMKV (metadata)
  • arch: MVVM
  • preferences: Jetpack Datastore (proto)

Credits:

  • librespot-java for the core API part and playback
  • librespot-android for sink and decoder source (in Jetispot they are rewritten to Kotlin)
  • moshi and moshix for the undocumented API JSON parsing
  • VK Icons for the amazing icon set used in the application's icon
  • MMKV for ultra-fast way to cache entity extended metadata
  • Now Playing: design by Nazım Can Tunç, implementation by Dot's Tea Lab
  • Google for Android/Jetpack/Hilt

* I heard some people can log in with a free account, but I won't provide any assistance to people without premium subscription. There is a possibility that a subscription check may be added to the client side in the future.

jetispot's People

Contributors

itaysonlab avatar nxoim avatar al-alig avatar boehs avatar aliveoutside avatar evolitist avatar

Stargazers

 avatar Olexandr Yasinskyi avatar Kyler avatar Vinicius avatar  avatar

Watchers

 avatar

Forkers

al-alig

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.