* chore: bump version to v2.3.3-preview * Optimiziation for multiple parallel and long-running downloads (#838) * Add missing Content-Type header to downloads (#837) Conditionally add Content-Length header to downloads Only calculate fileSize if file is not a directory in DirectDownloadPlugin * Update dependencies, add Google Guava * Refactor and optimize download bandwidth monitoring and throttling * Update .jar layer extraction command in Dockerfile * Fix Dockerfile.ubuntu * Furhter performance and tracking improvements for downloads * Fix tests * Update HeroUI version * Encode filenames in Content-Disposition header according to RFC 6266 (#841) * Encode filenames in Content-Disposition header with UTF-8 according to RFC 6266 * Fix tests
Overview
Name and functionality inspired by Jellyfin.
Documentation
The documentation and screenshots are available at gameyfin.org.
Features
✨ Automatically scans and indexes your game libraries
⬇️ Access your library via your web browser & download games directly from there
👥 Share your library with friends & family
⚛️ LAN-friendly (everything is cached locally - except for videos)
🐋 Runs in a container or any system with a JVM
🌈 Themes (including colorblind support)
🔌 Easily expandable with plugins
🔒 Integrates into your SSO solution via OAuth2 / OpenID Connect
🆓 100% open source and free to use without any paywall.
Contribute to Gameyfin
Contributions are welcome!
There are no strict requirements to contribute, but please contact us first if you want to implement a new feature or
change the design of the application before you start working on it.
Technical Details
Gameyfin v2 is written in Kotlin and uses the following libraries/frameworks:
- Spring Boot 3 for the backend
- Vaadin Hilla & React for the frontend
- PF4J for the plugin system
- H2 database for persistence