diff --git a/README.md b/README.md
index 9c49fe69..a57d4fe6 100644
--- a/README.md
+++ b/README.md
@@ -19,13 +19,13 @@ A modern client for Plex and Jellyfin on desktop, mobile, and TV. Built with Flu
## 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) |
| 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) |
@@ -50,36 +50,61 @@ Package managers:
## Features
### Browse & Discover
-- Libraries, collections, and playlists
+- Libraries, collections, and playlists — video and audio
- 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
+- 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
+### 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
+
### Playback
- 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
-- Online subtitle search & download[^2]
-- Audio & subtitle choices remembered per title
+- Online subtitle search & download[^plex]
+- Audio & subtitle choices remembered per title, or follow the server's per-episode selections
- Progress sync and resume
- Auto-play next episode with skip intro / skip credits
- Chapter navigation with thumbnail scrub previews
-- Playback speed, audio sync offset, sleep timer
-- Ambient lighting and GLSL shader presets[^3]
-- Picture-in-Picture[^4]
-- Refresh-rate matching[^5]
-- External player launch (VLC, MX Player, etc.)
+- Playback speed from 0.25x to 8x, audio sync offset, sleep timer (fixed durations or end of video)
+- Video zoom 50-200% with pinch, presets, and hotkeys
+- Audio passthrough[^pass], stereo downmix with center-channel boost, and loudness normalization
+- File Info sheet — every version, file, and stream the server reports
+- 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]
+
+### 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
### Live TV & DVR
-- Live TV channel browsing with favorites
-- DVR support with EPG guide, recording rules, and scheduled recordings[^2]
+- Live TV channel browsing, tuning, and favorites
+- 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
### Downloads & Offline
-- Download media for offline viewing
+- Download movies, shows, and music for offline playback[^dl]
- 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
### Watch Together
@@ -87,29 +112,42 @@ Package managers:
- Real-time play / pause / seek sync
### Integrations
-- Discord Rich Presence[^6]
-- Trakt, MyAnimeList, AniList, and Simkl tracking & rating
+- Discord Rich Presence[^desktop]
+- Trakt, MyAnimeList, AniList, and Simkl — ratings, watched sync, and real-time scrobbling[^rt]
- Plezy Remote — control desktop and TV from mobile
-- Watch Next row
+- Watch Next row and tvOS Top Shelf[^shelf]
### Platform & Customization
- 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
- Settings import/export
-- Localized in English plus 14 translations
+- Localized in English plus 21 translations
-[^1]: Not available on Linux.
-[^2]: Plex only.
-[^3]: Not available on iOS or tvOS.
-[^4]: Android, iOS, and macOS.
-[^5]: Windows, Android, and tvOS.
-[^6]: Desktop only.
+[^jf]: Jellyfin only.
+[^plex]: Plex only.
+[^connect]: Requires connecting the service under Settings > Services.
+[^hdr]: In-app HDR toggle on Windows, macOS, iOS, and tvOS. Dolby Vision on Android and Apple TV.
+[^pass]: Desktop, Android TV, and Apple TV.
+[^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
### Prerequisites
-- Flutter SDK 3.38.4+
+- Flutter SDK 3.44.0+
- A Plex account or Jellyfin server with user credentials
### Setup
@@ -148,6 +186,12 @@ To install the same pre-commit checks locally:
scripts/setup_hooks.sh
```
+End-to-end tests (Android emulator plus a Dockerized Jellyfin fixture):
+
+```bash
+python3 scripts/run_maestro.py basic
+```
+
## Contributing
See [CONTRIBUTING.md](CONTRIBUTING.md) for development workflow, formatting, tests, and translation guidelines.
diff --git a/assets/readme_icons/explore.svg b/assets/readme_icons/explore.svg
new file mode 100644
index 00000000..5ea56471
--- /dev/null
+++ b/assets/readme_icons/explore.svg
@@ -0,0 +1 @@
+
diff --git a/assets/readme_icons/music.svg b/assets/readme_icons/music.svg
new file mode 100644
index 00000000..6a1e0e41
--- /dev/null
+++ b/assets/readme_icons/music.svg
@@ -0,0 +1 @@
+