Skip to content
Beautiful and native music streamer
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.idea Added run-time guest mode support and crash fixes Dec 3, 2018
app Added run-time guest mode support and crash fixes Dec 3, 2018
gradle/wrapper Added loading progress for Albums page Sep 29, 2018
.gitignore Initial commit Aug 14, 2018
LICENSE Initial commit Aug 14, 2018
README.md
build.gradle Added user playlists support Nov 7, 2018
example-gradle.properties Pause the audio player in case of an incoming call or head phone removal Sep 6, 2018
gradlew
gradlew.bat Initial commit Aug 14, 2018
settings.gradle Initial commit Aug 14, 2018

README.md

veezee - music streamer (Android)


This project is a work in progress!

veezee is a cross-platform music streamer inspired by Apple Music and Spotify for iOS and Android. It is built with native technologies for each platform (Swift and Kotlin).

This is the repository for veezee for Android, the iOS version can be found here.


General features

  • Supports tracks, albums, playlists and genres
  • User management with email/password and Google (Supports cross-device sessions)
  • Supports remote (MongoDB) and local-offline (Couchbase) databases
  • Offline mode
  • Theme support
  • Sharing

Android version features

  • Completely written in Kotlin
  • Optimized for all screen aspect ratios
  • Uses ConstraintLayout
  • RxKotlin (Limited use)
  • High performance audio streaming engine (using ExoPlayer)
  • Guest mode (Without login)
  • Many custom views for different pages
  • Beautiful animations and transitions
  • And more...

Things that are currently NOT planned

  • Supporting devices with smaller screens (Minimum for Android is 5 inches)
  • Localization
  • Equalizer

How to use

Compiling: Android version

You'll need to use Android Studio.

  • Open Android Studio and generate a keystore file that is going to be used to sign the app (for both debug and production builds) (Instructions)
  • Rename the example-gradle.properties file to gradle.properties located in the project root and optionally fill it with API keys for various services supported by veezee
  • Open the project by using Android Studio file menu.
  • Wait for Android Studio to complete the indexing proccess and then sync Gradle and then build the project.
  • Select a device or emulator with a screen size equal or larger than 5 inch (e.g. Nexus 5, Google Pixel, Galaxy S9) and run the project

Common Android Studio issues

  • You may have to remove fabric.properties (if it exists) from the /app directory and let Gradle rebuild it.
  • Be aware of the different results you may get when using quotation marks around values in gradle.properties file

Setting up a server (IMPORTANT!)

veezee depends on a functioning HTTPS API server to show music lists and play music as well as do user management and provide analytics data. An incomplete example is provided by the veezee team that can be used as a starting point but it's not completely safe and must be reviewed thoroughly before used in a production environment.

The server can be set up either on the localhost or the Internet. This server's address must be specified in the Constants.kt file in the Android application's project code.

https://veezee.cloud/api/v1/ is a demo API limited in functionaliity (registrations not allowed) that can be used to understand the apps behavior. It contains some music and image files that exist for educational purposes only! No profit is gained from them. Its content may not be used in any way that may violate any copyright laws. This server does not have powerful hardware and network connectivity and is expected to be slow and unresponsive at times.

For more information about the server application please visit here.

License

veezee (Android) is available under the MIT license. See LICENSE file for more info.

You can’t perform that action at this time.