/Kafka

Read, play and download millions of books; served by archive.org.

Primary LanguageKotlinApache License 2.0Apache-2.0

Kafka

Kafka uses www.archive.org to serve millions of audiobooks and pdf books available across a multitude of genres and languages, all free and in the public domain.

  • 41 million books and text; 14.5 million audio recordings - tagged and searchable with filters
  • New content added continuously by the community as well as Kafka Archives
  • Audio player for seamless background playback, sleep timer and playback speed controls
  • Text reader for reading PDFs with features like continue-reading
  • Mark content as favorite and build your own library
  • Download content on your device and share it freely - or share within the app with convenient deep linking
  • Dark theme with MaterialYou colors

Download

Or Download APK

Demo


How to run

  • Clone the repo
  • Clone Sarahang in the root folder (Kafka).
    Sarahang is the audio player being used in Kafka and not yet provided through maven.
  • Add google_server_client_id=xxx and pipeless_auth_token=xxx in your local.properties file. You can use arbitrary values, these tokens only provide additional functionalities.
  • Run project

google-services.json for debug flavour is added to the repository.

Architecture

Kafka implements MVVM with interactors using all the latest android frameworks.
Parts of the architecture are inspired by Tivi. Download and audio features are copied from DatMusic.

The app uses Coroutines, Jetpack compose, Material3, Room, Retrofit2, Dagger Hilt, ExoPlayer

final-architecture