An immersive Apple Music library player for iOS.
Arrange your library your way! Reorder songs and albums manually. Put your favorites on top.
SongPocket is focused and elegant.
Focused means judiciously saying no to and removing features.
- For example, only one way to do most given actions. You can’t swipe or touch-and-hold a song to play it later; you must use the buttons. That’s monotony.
- No settings, because they distract. That actually lets you fearlessly delete and reinstall the app.
I like minimalism because it means everything there is important.
Elegant means simple yet powerful.
- For example, select-range lets you easily select multiple items at once.
- Reorder, play-later, or shuffle-play only selected items.
Shockingly flexible is generally good.
Things I explicitly don’t want. This list is incomplete, tentative, and hopefully helpful, not spiteful.
- Listening history
- Song durations
- Install Xcode on your Mac.
- Download the code for SongPocket, then open the “LavaRock” Xcode Project file. (That’s SongPocket’s internal name.)
- Atop the Xcode window, choose an iOS Simulator device, then click “play”.
For help, see Apple’s documentation.
The Simulator doesn’t support most Apple Music features, so you’ll need to develop on a physical device. This takes a few more steps.
- Plug your iOS device into your Mac.
- Atop the Xcode window, choose your device, then click “play”. Xcode will show an error, “Unknown Team”.
- In the menu bar, choose Xcode → Settings → Accounts, then sign in to your Apple account. (Warning: you can only run your app on 3 devices unless you pay for the Apple Developer Program.)
- In the main Xcode window, in the left sidebar, click the folder icon, then the topmost “LavaRock” row. To the right, below “Targets”, choose “LavaRock”, then above, click “Signing & Capabilities”. Below “Signing (Debug)”, for “Team”, choose your Apple account.
- Xcode will show an error, “Failed Registering Bundle Identifier”. For “Bundle Identifier”, replace “com.loudsounddreams.LavaRockDebug” with anything else. (This is how Apple devices tell apps apart.) Click “Try Again”, then click “play”.
- Xcode will say “Developer Mode disabled”. Follow its instructions to turn on Developer Mode on your device. Choose your device, then click “play”.
- Xcode will say “the request to open ‘[your bundle identifier]’ failed.” Follow its instructions for your iOS device, then click “play”.
For help, see Apple’s documentation.
Fork this repo, make your changes in your fork, then open a pull request against my repo. For help, see GitHub’s documentation.
Include screenshots if you change the UI—you were looking at it anyway, right?
You have a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International license for this software.
That means you can adapt or share it, but when you do so, please…
- Mention SongPocket by Loud Sound Dreams.
- Don’t sell it.
- Apply these same rules to the resulting work.
Be reasonable. Contact me with any questions.