Skip to content

Nothing style music app for Android based on community-projects design

License

Notifications You must be signed in to change notification settings

PreyK/Nothing-Music-Community

Repository files navigation

Nothing Music Community

Nothing style minimal music player app for Android based on design by Alkid Shuli.

Currently pretty barebones, all it does is plays your music in your /Music directory and looks cool.

Made with fuseopen in UX markup and FuseJS with UNO native Java elements for Android.

Current Features

  • Album Art
  • Extracting metadata from the audio files if it has it (artist name, song name)
  • Play, Pause, Seek
  • Background playback
  • Audio vaweform visualization (currently just randomized bars)
  • Shuffle
  • Repeat
  • Next/Prev
  • Playlists
  • Albums
  • Android media notification (play, pause etc from the lock screen)
  • PR's are welcome

How to display album art

By default the app finds all your music in your Android /Music folder (\storage\emulated\0\Music) If the folder containing the audio file has an image (.jpg, .jpeg, .png), it uses it for the album art.

Examples:

image image

Artist and Song name

Reads it from the audio metadata. You can set it in most modern operating systems.

image

How to build

Some basic info on how to build

  1. Get set up with fuseopen. I recommend fuse X studio because it's by far the easiest way to grab everything in one installer.

  2. Open the project (where the .unoproject is located) in fuse X.

  3. You should see the live preview, you need to place your music in C:\storage\emulated\0\Music to see the music in the live preview image

  4. To build and try it on Android, connect your phone with USB debugging and click Export For Android image

Platforms

Pretty much only tested on Nothing Phone (2), layout elements could be off on other screens.

It uses FuseCloud's Streaming Player with fixes for modern Android systems, it sould work on iOS but you might need to update/rewrite the native code to work on modern iOS versions.

Brief explanation of the project structure

  • js Contains the "frontend/business logic" javascript code.
  • Native Contains the native platform specific code for Android, iOS and a dummy for preview
  • .UX is the [UX Markup] for the layout

License

CC BY-NC 4.0