* Catch empty episodes * Linting. * Mirror iOS more. Remove unused imports. Turn non-used cards into buttons to allow focus. * Allow focusing on Empty / Error cards. * Make ErrorCard Selectable * cleanup * Focusable Loading Card. * Fall back to empty season. * Last of the MacOS Catalyst stuff * Force Unwrap. * Don't force unwrap. * Remove unneeded `focusedSection` from `EpisodeSelector`. --------- Co-authored-by: Ethan Pippin <ethanpippin2343@gmail.com> |
||
---|---|---|
.github | ||
Documentation | ||
PreferencesView | ||
Resources | ||
Scripts/Translations | ||
Shared | ||
Swiftfin | ||
Swiftfin tvOS | ||
Swiftfin.xcodeproj | ||
Translations | ||
fastlane | ||
.gitignore | ||
.swiftformat | ||
Cartfile | ||
ChromeCastFramework.json | ||
Gemfile | ||
LICENSE.md | ||
README.md | ||
RedrawOnNotificationView.swift | ||
swiftgen.yml |
README.md
Swiftfin is a modern video client for the Jellyfin media server. Made using Swift to maximize direct play with the power of VLC and look native on all classes of Apple devices.
⚡️ Download
🛠️ TestFlight
Use the TestFlight version to test new features and bug fixes before being published to the App Store. We are grateful for your time and resources for reporting new bugs.
[!NOTE] Only iOS has a TestFlight version. See this discussion for tvOS updates.
⚙️ Development
Thank you for your interest in Swiftfin! Please check out the Contribution Guidelines to get started.
🎬 Player Differences
Swiftfin offers both Native (AVKit) and Swiftfin (VLCKit) players to provide the best compatibility across Apple devices. To learn more about the capabilities and differences between these players, visit our Player Differences documentation.
📚 Translations
Don't see Swiftfin in your language?
Check out our Weblate instance to help translate Swiftfin and other Jellyfin projects.