docs: refresh readme features and download channels
The features section last changed substantively in 2c54baca3 (2026-05-17),
before the music and Explore subsystems shipped, so two whole feature areas
were missing and several availability notes had drifted.
Adds Music and Explore & Requests sections, and corrects claims that no
longer hold: the locale count (14 -> 21), the EPG guide is not Plex-only,
downloads include music and are unavailable on tvOS, Picture-in-Picture
excludes the TV platforms, and shaders and ambient lighting need the mpv
backend. Footnotes move from numeric to named so adding one no longer
renumbers the rest.
Windows now points at the Microsoft Store listing instead of the direct
installer and portable archives. The App Store and Play badges carry
campaign tokens so README traffic is attributable in each store's own
reporting.
The prerequisite Flutter version matches the pinned toolchain (3.44.0), and
the Maestro end-to-end suite gets the pointer it never had.
This commit is contained in:
@@ -19,13 +19,13 @@ A modern client for Plex and Jellyfin on desktop, mobile, and TV. Built with Flu
|
|||||||
|
|
||||||
## Download
|
## Download
|
||||||
|
|
||||||
<a href='https://apps.apple.com/us/app/id6754315964'><img height='60' alt='Download on the App Store' src='./assets/app-store-badge.png'/></a>
|
<a href='https://apps.apple.com/app/apple-store/id6754315964?pt=128238902&ct=GitHub&mt=8'><img height='60' alt='Download on the App Store' src='./assets/app-store-badge.png'/></a>
|
||||||
<a href='https://play.google.com/store/apps/details?id=com.edde746.plezy'><img height='60' alt='Get it on Google Play' src='./assets/play-store-badge.png'/></a>
|
<a href='https://play.google.com/store/apps/details?id=com.edde746.plezy&referrer=utm_source%3Dgithub%26utm_campaign%3Dreadme_badge'><img height='60' alt='Get it on Google Play' src='./assets/play-store-badge.png'/></a>
|
||||||
<a href='https://www.amazon.com/gp/product/B0GK65CVS1'><img height='60' alt='Available at the Amazon App Store' src='./assets/amazon-badge.png'/></a>
|
<a href='https://www.amazon.com/gp/product/B0GK65CVS1'><img height='60' alt='Available at the Amazon App Store' src='./assets/amazon-badge.png'/></a>
|
||||||
|
<a href='https://get.microsoft.com/installer/download/9n5r1s1t68h7?referrer=appbadge&cid=github'><img height='60' alt='Get it from Microsoft' src='https://get.microsoft.com/images/en-us%20dark.svg'/></a>
|
||||||
|
|
||||||
| Platform | Download |
|
| Platform | Download |
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| Windows | [Installer (x64, arm64)](https://github.com/edde746/plezy/releases/latest/download/plezy-windows-installer.exe) · [Portable x64](https://github.com/edde746/plezy/releases/latest/download/plezy-windows-x64-portable.7z) · [Portable arm64](https://github.com/edde746/plezy/releases/latest/download/plezy-windows-arm64-portable.7z) |
|
|
||||||
| macOS | [DMG (x64, arm64)](https://github.com/edde746/plezy/releases/latest/download/plezy-macos.dmg) |
|
| macOS | [DMG (x64, arm64)](https://github.com/edde746/plezy/releases/latest/download/plezy-macos.dmg) |
|
||||||
| Linux x64 | [.deb](https://github.com/edde746/plezy/releases/latest/download/plezy-linux-x64.deb) · [.rpm](https://github.com/edde746/plezy/releases/latest/download/plezy-linux-x64.rpm) · [.pkg.tar.zst](https://github.com/edde746/plezy/releases/latest/download/plezy-linux-x64.pkg.tar.zst) · [portable tar.gz](https://github.com/edde746/plezy/releases/latest/download/plezy-linux-x64.tar.gz) |
|
| Linux x64 | [.deb](https://github.com/edde746/plezy/releases/latest/download/plezy-linux-x64.deb) · [.rpm](https://github.com/edde746/plezy/releases/latest/download/plezy-linux-x64.rpm) · [.pkg.tar.zst](https://github.com/edde746/plezy/releases/latest/download/plezy-linux-x64.pkg.tar.zst) · [portable tar.gz](https://github.com/edde746/plezy/releases/latest/download/plezy-linux-x64.tar.gz) |
|
||||||
| Linux arm64 | [.deb](https://github.com/edde746/plezy/releases/latest/download/plezy-linux-arm64.deb) · [.rpm](https://github.com/edde746/plezy/releases/latest/download/plezy-linux-arm64.rpm) · [.pkg.tar.zst](https://github.com/edde746/plezy/releases/latest/download/plezy-linux-arm64.pkg.tar.zst) · [portable tar.gz](https://github.com/edde746/plezy/releases/latest/download/plezy-linux-arm64.tar.gz) |
|
| Linux arm64 | [.deb](https://github.com/edde746/plezy/releases/latest/download/plezy-linux-arm64.deb) · [.rpm](https://github.com/edde746/plezy/releases/latest/download/plezy-linux-arm64.rpm) · [.pkg.tar.zst](https://github.com/edde746/plezy/releases/latest/download/plezy-linux-arm64.pkg.tar.zst) · [portable tar.gz](https://github.com/edde746/plezy/releases/latest/download/plezy-linux-arm64.tar.gz) |
|
||||||
@@ -50,36 +50,61 @@ Package managers:
|
|||||||
## Features
|
## Features
|
||||||
|
|
||||||
### <img src="assets/readme_icons/browse.svg" height="20" alt="" align="center" /> Browse & Discover
|
### <img src="assets/readme_icons/browse.svg" height="20" alt="" align="center" /> Browse & Discover
|
||||||
- Libraries, collections, and playlists
|
- Libraries, collections, and playlists — video and audio
|
||||||
- Discover hub — Continue Watching, Next Up, trending, and recommendations
|
- Discover hub — Continue Watching, Next Up, trending, and recommendations
|
||||||
- Cross-server search
|
- Cross-server search across every connected Plex and Jellyfin server
|
||||||
- Filtering, sorting, and alphabetical jump navigation
|
- Filtering, sorting, and alphabetical jump navigation
|
||||||
|
- Folder browsing and folder playback — home-video libraries open in folder view
|
||||||
|
- Resolution, HDR/Dolby Vision, and audio-format badges on cards and detail pages
|
||||||
|
- Favorites and unwatched library filters[^jf]
|
||||||
- Extras — trailers, deleted scenes, behind-the-scenes
|
- Extras — trailers, deleted scenes, behind-the-scenes
|
||||||
|
|
||||||
|
### <img src="assets/readme_icons/explore.svg" height="20" alt="" align="center" /> Explore & Requests
|
||||||
|
- Explore tab — watchlist, trending, popular, and recommendation rows from Plex Discover[^plex], Trakt, MyAnimeList, AniList, Simkl, and Seerr[^connect]
|
||||||
|
- Search any connected catalog source
|
||||||
|
- Catalog titles matched back to your own libraries by external ID
|
||||||
|
- Seerr — request movies and shows with per-season, 4K, and advanced destination options, and see request status inline
|
||||||
|
- Watchlist sync — add and remove titles on Plex, Trakt, MyAnimeList, AniList, and Simkl from anywhere in the app
|
||||||
|
|
||||||
### <img src="assets/readme_icons/playback.svg" height="20" alt="" align="center" /> Playback
|
### <img src="assets/readme_icons/playback.svg" height="20" alt="" align="center" /> Playback
|
||||||
- Wide codec support (HEVC, AV1, VP9, and more)
|
- Wide codec support (HEVC, AV1, VP9, and more)
|
||||||
- HDR and Dolby Vision[^1]
|
- HDR and Dolby Vision[^hdr]
|
||||||
|
- Direct play, or transcode presets from 240p/320 kbps to 1080p/20 Mbps
|
||||||
|
- Multi-version switching with per-version file details
|
||||||
- Full ASS/SSA subtitles with customizable styling
|
- Full ASS/SSA subtitles with customizable styling
|
||||||
- Online subtitle search & download[^2]
|
- Online subtitle search & download[^plex]
|
||||||
- Audio & subtitle choices remembered per title
|
- Audio & subtitle choices remembered per title, or follow the server's per-episode selections
|
||||||
- Progress sync and resume
|
- Progress sync and resume
|
||||||
- Auto-play next episode with skip intro / skip credits
|
- Auto-play next episode with skip intro / skip credits
|
||||||
- Chapter navigation with thumbnail scrub previews
|
- Chapter navigation with thumbnail scrub previews
|
||||||
- Playback speed, audio sync offset, sleep timer
|
- Playback speed from 0.25x to 8x, audio sync offset, sleep timer (fixed durations or end of video)
|
||||||
- Ambient lighting and GLSL shader presets[^3]
|
- Video zoom 50-200% with pinch, presets, and hotkeys
|
||||||
- Picture-in-Picture[^4]
|
- Audio passthrough[^pass], stereo downmix with center-channel boost, and loudness normalization
|
||||||
- Refresh-rate matching[^5]
|
- File Info sheet — every version, file, and stream the server reports
|
||||||
- External player launch (VLC, MX Player, etc.)
|
- Ambient lighting and GLSL shader presets[^mpv]
|
||||||
|
- Picture-in-Picture[^pip]
|
||||||
|
- Refresh-rate matching[^rrm]
|
||||||
|
- External player launch (VLC, MX Player, etc.) with progress sync back[^android]
|
||||||
|
|
||||||
|
### <img src="assets/readme_icons/music.svg" height="20" alt="" align="center" /> Music
|
||||||
|
- Music libraries — artist, album, and track browsing with square artwork
|
||||||
|
- Album and artist screens with play, shuffle, and Instant Mix
|
||||||
|
- Gapless playback with a full play queue — reorder, remove, play next, add to queue
|
||||||
|
- Now Playing with synced lyrics[^lyrics], persistent mini-player, and sleep timer
|
||||||
|
- Background playback with lock-screen, media-key, and notification controls[^bgaudio]
|
||||||
|
- Offline playback of downloaded albums and tracks
|
||||||
|
- Streaming quality presets — Original, 320, 192, or 128 kbps
|
||||||
|
|
||||||
### <img src="assets/readme_icons/live-tv.svg" height="20" alt="" align="center" /> Live TV & DVR
|
### <img src="assets/readme_icons/live-tv.svg" height="20" alt="" align="center" /> Live TV & DVR
|
||||||
- Live TV channel browsing with favorites
|
- Live TV channel browsing, tuning, and favorites
|
||||||
- DVR support with EPG guide, recording rules, and scheduled recordings[^2]
|
- EPG guide with What's On and per-show schedules
|
||||||
|
- DVR recording rules, scheduled recordings, and a rememberable recording target library[^plex]
|
||||||
- Multi-server Live TV support where available
|
- Multi-server Live TV support where available
|
||||||
|
|
||||||
### <img src="assets/readme_icons/downloads.svg" height="20" alt="" align="center" /> Downloads & Offline
|
### <img src="assets/readme_icons/downloads.svg" height="20" alt="" align="center" /> Downloads & Offline
|
||||||
- Download media for offline viewing
|
- Download movies, shows, and music for offline playback[^dl]
|
||||||
- Background queue with pause / resume
|
- Background queue with pause / resume
|
||||||
- Sync rules for automatic downloads
|
- Sync rules for automatic downloads, with per-show "Include Specials"
|
||||||
- Offline browsing with watch state sync-back on reconnect
|
- Offline browsing with watch state sync-back on reconnect
|
||||||
|
|
||||||
### <img src="assets/readme_icons/watch-together.svg" height="20" alt="" align="center" /> Watch Together
|
### <img src="assets/readme_icons/watch-together.svg" height="20" alt="" align="center" /> Watch Together
|
||||||
@@ -87,29 +112,42 @@ Package managers:
|
|||||||
- Real-time play / pause / seek sync
|
- Real-time play / pause / seek sync
|
||||||
|
|
||||||
### <img src="assets/readme_icons/integrations.svg" height="20" alt="" align="center" /> Integrations
|
### <img src="assets/readme_icons/integrations.svg" height="20" alt="" align="center" /> Integrations
|
||||||
- Discord Rich Presence[^6]
|
- Discord Rich Presence[^desktop]
|
||||||
- Trakt, MyAnimeList, AniList, and Simkl tracking & rating
|
- Trakt, MyAnimeList, AniList, and Simkl — ratings, watched sync, and real-time scrobbling[^rt]
|
||||||
- Plezy Remote — control desktop and TV from mobile
|
- Plezy Remote — control desktop and TV from mobile
|
||||||
- Watch Next row
|
- Watch Next row and tvOS Top Shelf[^shelf]
|
||||||
|
|
||||||
### <img src="assets/readme_icons/customization.svg" height="20" alt="" align="center" /> Platform & Customization
|
### <img src="assets/readme_icons/customization.svg" height="20" alt="" align="center" /> Platform & Customization
|
||||||
- Desktop, mobile, and TV — full D-pad, keyboard, and gamepad support
|
- Desktop, mobile, and TV — full D-pad, keyboard, and gamepad support
|
||||||
- Customizable keyboard shortcuts[^6]
|
- Multiple servers at once — Plex and Jellyfin side by side
|
||||||
|
- Profiles with per-profile downloads, watch state, and settings; Plex Home switching with PIN
|
||||||
|
- Jellyfin local-server discovery, multiple URLs per server, and Quick Connect sign-in
|
||||||
|
- TV layout options — corner spotlight backdrop, full-card artwork, and Force TV mode on desktop
|
||||||
|
- Customizable keyboard shortcuts[^desktop]
|
||||||
- Metadata and artwork editing
|
- Metadata and artwork editing
|
||||||
- Settings import/export
|
- Settings import/export
|
||||||
- Localized in English plus 14 translations
|
- Localized in English plus 21 translations
|
||||||
|
|
||||||
[^1]: Not available on Linux.
|
[^jf]: Jellyfin only.
|
||||||
[^2]: Plex only.
|
[^plex]: Plex only.
|
||||||
[^3]: Not available on iOS or tvOS.
|
[^connect]: Requires connecting the service under Settings > Services.
|
||||||
[^4]: Android, iOS, and macOS.
|
[^hdr]: In-app HDR toggle on Windows, macOS, iOS, and tvOS. Dolby Vision on Android and Apple TV.
|
||||||
[^5]: Windows, Android, and tvOS.
|
[^pass]: Desktop, Android TV, and Apple TV.
|
||||||
[^6]: Desktop only.
|
[^mpv]: Requires the mpv player backend — unavailable on iOS and tvOS, and Android defaults to ExoPlayer.
|
||||||
|
[^pip]: Android, iOS, and macOS — not on Android TV or Apple TV.
|
||||||
|
[^rrm]: Windows, Android, and tvOS.
|
||||||
|
[^android]: Progress sync on Android.
|
||||||
|
[^lyrics]: Where your server provides lyrics.
|
||||||
|
[^bgaudio]: tvOS pauses music when the app is backgrounded.
|
||||||
|
[^dl]: Not available on tvOS.
|
||||||
|
[^desktop]: Desktop only.
|
||||||
|
[^rt]: Real-time scrobbling on Trakt and Simkl; MyAnimeList and AniList update on completion.
|
||||||
|
[^shelf]: Android TV / Fire TV and tvOS.
|
||||||
|
|
||||||
## Building from Source
|
## Building from Source
|
||||||
|
|
||||||
### Prerequisites
|
### Prerequisites
|
||||||
- Flutter SDK 3.38.4+
|
- Flutter SDK 3.44.0+
|
||||||
- A Plex account or Jellyfin server with user credentials
|
- A Plex account or Jellyfin server with user credentials
|
||||||
|
|
||||||
### Setup
|
### Setup
|
||||||
@@ -148,6 +186,12 @@ To install the same pre-commit checks locally:
|
|||||||
scripts/setup_hooks.sh
|
scripts/setup_hooks.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
|
End-to-end tests (Android emulator plus a Dockerized Jellyfin fixture):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python3 scripts/run_maestro.py basic
|
||||||
|
```
|
||||||
|
|
||||||
## Contributing
|
## Contributing
|
||||||
|
|
||||||
See [CONTRIBUTING.md](CONTRIBUTING.md) for development workflow, formatting, tests, and translation guidelines.
|
See [CONTRIBUTING.md](CONTRIBUTING.md) for development workflow, formatting, tests, and translation guidelines.
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><defs><linearGradient id="g" x1="0" y1="24" x2="24" y2="0" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ab543a"/><stop offset="1" stop-color="#ff7e57"/></linearGradient></defs><path fill="url(#g)" d="M19.3 16.9c.4-.7.7-1.5.7-2.4c0-2.5-2-4.5-4.5-4.5S11 12 11 14.5s2 4.5 4.5 4.5c.9 0 1.7-.3 2.4-.7l3.2 3.2l1.4-1.4zm-3.8.1c-1.4 0-2.5-1.1-2.5-2.5s1.1-2.5 2.5-2.5s2.5 1.1 2.5 2.5s-1.1 2.5-2.5 2.5M12 20v2C6.48 22 2 17.52 2 12S6.48 2 12 2c4.84 0 8.87 3.44 9.8 8h-2.07A8 8 0 0 0 15 4.59V5c0 1.1-.9 2-2 2h-2v2c0 .55-.45 1-1 1H8v2h2v3H9l-4.79-4.79C4.08 10.79 4 11.38 4 12c0 4.41 3.59 8 8 8"/></svg>
|
||||||
|
After Width: | Height: | Size: 666 B |
@@ -0,0 +1 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><defs><linearGradient id="g" x1="0" y1="24" x2="24" y2="0" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ab543a"/><stop offset="1" stop-color="#ff7e57"/></linearGradient></defs><path fill="url(#g)" d="M20 2H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2m-2 5h-3v5.5a2.5 2.5 0 0 1-5 0a2.5 2.5 0 0 1 2.5-2.5c.57 0 1.08.19 1.5.51V5h4zM4 6H2v14c0 1.1.9 2 2 2h14v-2H4z"/></svg>
|
||||||
|
After Width: | Height: | Size: 471 B |
Reference in New Issue
Block a user