Unified cross-platform music player.
iosDemo.MP4
Development is currently prioritized for iOS and macOS, however first stable release should also work on Android, Linux and Windows.
- ✅ - Basically ready
- 🟧 - Partially done
- 🟥 - Not yet added
- ❓ - Unknown if it will be added
Service | Status | Notes |
---|---|---|
MusicKit | ✅ | |
YouTube | ✅ | Age restricted content does not work |
Local media | ✅ | |
Deezer | ❓ | |
Jellyfin | ❓ | |
Funkwhale | ❓ |
Feature | Status | Notes |
---|---|---|
Unified search | ✅ | |
Unified playlists | ✅ | |
Lyrics | ✅ | |
Metadata tagging | ✅ | |
Media synchronisation | ✅ | Not tested on Windows |
Unified library | 🟧 | Missing YouTube support and UI to add items |
SERVICE_{LOCAL,MUSICKIT,YOUTUBE}
environment variables can be used to conditonally toggle bundling music services.
All of them are set to true
by default, meaning they are enabled.
These steps are needed for every platform to work properly
- Make sure you have all dependencies required to build the app:
- Place your MusicKit Developer Token in corresponding files:
- /.example.env ⇢ /.env
- Setup ionic and install dependencies
pnpm install -g @ionic/cli # Install ionic cli globally
ionic config set -g npmClient pnpm # Make ionic use pnpm
pnpm install # Install all project dependencies
ionic serve # Run the development server
ionic serve --external # add --external if you want to host it to other devices on your network
ionic build # Build the web app into dist/web
- If you intend to use DRM content via MusicKit in Electron you need to sign the electron application with VMP certificate, read more:
pnpm electron-dev # Run the app with development server
pnpm electron-build # Build the electron app into dist/electron
pnpm electron-preview # Preview how the app will look like in production mode
Note
MusicKit authorization on mobile requires you to already have Apple Music app installed.
Important
To run iOS app you will have to use physical device, as MusicKit is not supported in Simulator.
- Build and open in Xcode
ionic capacitor build ios
- Run on physical device
Note
Unlike iOS you can use Android Virtual Devices (AVD) found in Android Studio or any other Emulator for that matter.
- Place your MusicKit Developer Token in:
- /android/app/src/main/res/values/tokens.example.xml ⇢ /android/app/src/main/res/values/tokens.xml
- Build or open the app
ionic capacitor open android # Build android and open Android Studio
ionic capacitor run android # Or run android app directly in emulator