Contents
Info
jellify (verb) - _to make gelatinous_
see also
_Jellify_ is a free and open source music player for the Jellyfin Media Server. Built with React Native, it is available for both iOS and Android.
_Jellify_ requires a connection to a Jellyfin Media Server server to work. See also
Showcasing the artwork of your library, it has a user interface congruent to what _the big guys_ do. _Jellify_ also provides algorithmic curation of your music, driven by Jellyfin's Instant Mix and Suggestions APIs.
Background
This app was designed with me and my dad in mind. I wanted us to have a sleek, one stop shop for live recordings of bands we like (read: the Grateful Dead). The UI was designed so that we'd find it instantly familiar and useful. CarPlay / Android Auto support was also a must for us, as we both use CarPlay religiously.
Recommended Additions
These projects are not required to use _Jellify_, but are recommended by us to enrich your Jellyfin music experience!
- Really good at fetching missing artist artwork for obscure / less popular artists - Available in the default plugins catalog - Really good at fetching song lyrics - Gives a recap of your year in music listening similar to other music streaming services - A hosted version is provided here - Imports a user's Spotify playlists into Jellyfin - Can run as a scheduled task- AudioMuse-AI and it's associated plugin
Downloading
Android
Direct .APK Download
Head to releases to download the required .APK directly.
Also there is obtanium to which you can add Jellify as a repo to use the above releases as a repository.
For Obtanium, click "Add App", put "https://github.com/Jellify-Music/App" as the source URL, and on the next screen toggle "prereleases". You'll now be easily able to keep your local copy in sync with new releases.
iOS
The TestFlight Way
Join the TestFlight and install the latest version from there
The Sideloading Way
Head to releases to download the required .IPA directly.
Install via Altstore or your favorite sideloading utility
Screenshots
Screenshots taken on iPhone 15 Pro Max
Home
Library
Artists
Artist View
Similar Artists
Album Views
Track Options & Add to Playlist
Search
Player
CarPlay
Features
Current
- Available via Play Store, App Store, Testflight, and Android APKs
- Light and Dark modes (and different theme colors)
- Home screen access to previously played tracks, artists, and your playlists
- Quick access to similar artists and items for discovering music in your library
- Jellyfin playback reporting and Last.FM Plugin support
- Quick Connect Support
- Full Library Browsing
- Playlist support, including creating, updating, and reordering
- Offline Playback
- Support for Jellyfin Instant Mixes
- Over-the-Air Updates
- Shuffling
- Switching Music Libraries
- Google Cast Support (still in early stages)
- Storage UI Manager
- Gapless Playback
- Android Auto / CarPlay Support
Roadmap
1.4 - If You Plant Ice, You're Gonna Harvest Wind - December '26
- Websocket Support (Server online status)
- Collaborative Playlists
- EQ Controls
- Allow Self-Signed Certificates
1.5 - March '27
- App Customization Options
2.0.0 - December '27
- Watch Support
- Desktop Support (Experimental)
- Tablet Support
3.0.0 - TBD
- Seerr (formerly Jellyseerr) Integration
- Autoplay Integration
- tvOS (Apple and Android)
- JellyJam (Collaborative Queue)
Built with Good Stuff
Frontend
Tamagui\ Figtree\ Pulsar\ React Navigation\ React Native Blurhash\ React Native CarPlay\ React Native Drax\ React Native Reanimated\ React Native Toast Message\ React Native Vector Icons
- Specifically using Material Community Icons
Backend
Jellyfin SDK\ Tanstack Query\ React Native DNS Lookup\ React Native File Access\ React Native Google Cast\ React Native MMKV\ React Native Nitro Fetch\ React Native Nitro Modules\ React Native Nitro OTA\ React Native Nitro Player\ React Native URL Polyfill\ Zustand
Made for Jellify
We built these libraries for _Jellify_, and they're free for anyone to use in their own apps:
React Native Nitro Player\ React Native Reanimated Slider
Opt-In Monitoring
All logging and metrics gathering is _opt-in_ by default. This is merely here to help us make _Jellify_ better.
All logs and metrics are completely anonymized. No data can be traced back to you.
Error Reporting — GlitchTip
Unhandled exceptions and captured errors are reported to the SaaS GlitchTip instance via @sentry/react-native. Error reporting is initialized at app startup and is disabled unless you have opted in to sending metrics.
All logging goes through three shared utilities in src/utils/logging/index.ts, each tagged with a LoggingContext (e.g. Initialization, Playback Reporting, Queue, Favorites):
| Function | Severity | Sentry behaviour |
|---|---|---|
| captureError(error, context, message?) | Error | Reports exception via Sentry.captureException when metrics are enabled |
| captureWarning(context, message, error?) | Warning | Reports message at warning level via Sentry.captureMessage when metrics are enabled |
| captureInfo(context, message) | Info | Console-only — never sent to Sentry |
In production builds, all console.* methods are replaced with no-ops so that no debug output leaks — logs only surface through the explicit capture call path.
Love from Wisconsin 🧀
This is undoubtedly a passion project of mine, and I've learned a lot from working on it (and the many failed attempts before it). I hope you enjoy using it! Feature requests and bug reports are welcome :)
Support the Project
_Jellify_ is free, open source, and always will be. You can support development via Patreon, GitHub Sponsors, or Ko-Fi starting at $1.
All publicly paid supporters on GitHub and Patreon get their name displayed in the app's Settings as a thank-you.
🎁 Sticker Club
Patreon supporters on the $5 or $10 tier who stay subscribed for 3 months get a _Jellify_ sticker mailed to them. A small, physical thank-you for supporting a passion project.
Special Thanks
- The Jellyfin Team for making this possible with their software, SDKs, and unequivocal helpfulness.
- James, Chaphasilor and all other contributors of Finamp - another music app for Jellyfin
- Marc and the rest of the Margelo Community for their amazing modules and support
- Nicolas Charpentier for his React Native URL Polyfill module and for his assistance with getting Jest working
- The team behind Podverse for their incredible open source project, of which was used as a reference extensively during development
- My fellow contributors who have poured so much heart and a lot of sweat into making _Jellify_ a great experience
- The friends we made along the way that have been critical in fostering an amazing community around _Jellify_
- My long time friends that have heard me talk about _Jellify_ for literally eons. Thank you for testing _Jellify_ during it's infancy and for supporting me all the way back at the beginning of this project
- My best(est) friend Alyssa, for your design knowledge and for making various artwork for _Jellify_.