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 |
---|---|
MusicKit | ✅ |
YouTube | ✅ |
Local media | ✅ |
Deezer | ❓ |
Jellyfin | ❓ |
Funkwhale | ❓ |
Feature | Status | Notes |
---|---|---|
Unified search | ✅ | |
Unified playlists | 🟧 | Missing UI for adding songs to playlist |
Unified library | 🟧 | Missing album support (WIP) |
Metadata tagging | 🟥 | Manual metadata edition is supported |
Media synchronisation | 🟥 | |
Lyrics | 🟥 |
Dates attributed to each features are a subject to change as they are a very rough estimates at a very early point in development. Debugging, life-related things, app design and such might affect them. I will try to update the roadmap as the development progresses.
* – Features considered "optional", unclear whether they will materialize
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