Jellyflut Save

Just a jellyfin client made in flutter (side project quality code)

Project README

Jellyflut

A jellyfin client made in Flutter

It's a beta, it works okay.

:warning: News

The project is stale for now. I don't have much time and interest in this project for now. Video player are too much pain in FLutter. I'm still looking for solutions but as of now, I'm going to slow down the developpement of this app.

I'm still looking for any PR and will gladly accept them.

:gear: Features

You can :

  • Play a video
  • Read a book (epub/CBZ)
    • Epub is pretty limited for now as it's a juste a parser combined with an HTML viewer
    • need some work
  • Listen Music
    • Buggy on Linux (need to investigate, or to use another package for linux )
  • Look photos
  • SQLite to have logging and to save server URL
  • Browse all files
  • BIGGEST THING TO DO make transcoding work, for now i don't know how to check if file can be direct play and if no how to tell jellyfin to send me the correct url It works (not much anymore, broken since 10.8.0 beta 3)
    • Do not works correctly on Windows (seems broken due to libvlc dll, certificate issue)
    • On computer I added supported codec manually. Some codecs can be missing, if so, create an issue and I will check if it's playable
  • Control music from any screen
  • Extract or/and parse subtitles from video file
  • Only remote srt, cannot parse from mkv file (except in VLC)

Done

  • Add deconnect button and handle it well
  • Rework login page
  • Hero animation OK
  • Async details loading
  • Navigation details back stutter
  • Responsive (WIP)
  • Navigation with D-pad (seems ok but web can still select things from outside of the screen on home page)
    • Still need more works but you can navigate 80% of app which is sufficient for now
  • Handle multiple users and servers
  • Have a better handling of data when resizing to avoid reload from API
    • Seems pretty good right now, may need more works in future
  • Theme (dark/light)
  • Localization (ENG,FR,DE)

Todo

  • Always refactor everything
  • Add unit test
  • Correct "transcodeReasons=0" from jellyfin
  • Correct all flutter things, make things faster
  • Make IPTV on par with web version
    • Guide is working
    • Can play IPTV channels
    • still need to add recording

Screens

Phone

Desktop

Getting Started

This app should work on any platform but IOS and MacOs are not tested.

How to test ?

  git clone https://github.com/Thomas-Sohier/jellyflut.git
  cd jellyflut
  flutter packages get
  flutter packages upgrade
  flutter run

How to build ? (Android)

  flutter build apk --release

How to build ? (Computer, depending of platform)

Specific to Linux, you need to install dep

  # depend of your distro of course
  sudo apt-get update -y
  sudo apt-get install -y vlc libvlc-dev ninja-build clang libgtk-3-dev
  # enable desktop support at first (shouldn't be necessary but anyway)
  flutter config --enable-windows-desktop
  flutter config --enable-macos-desktop
  flutter config --enable-linux-desktop

  # build the app depending of your platform
  flutter build windows
  flutter build macos
  flutter build linux
Open Source Agenda is not affiliated with "Jellyflut" Project. README Source: Thomas-Sohier/jellyflut
Stars
143
Open Issues
6
Last Commit
6 months ago
License
MIT
Tags

Open Source Agenda Badge

Open Source Agenda Rating