jfa-go  by hrfee

User management app for Jellyfin (Emby support)

Created 5 years ago
1,004 stars

Top 37.2% on SourcePulse

GitHubView on GitHub
Project Summary

jfa-go is a user management application designed to simplify the administration of Jellyfin and Emby media servers. It targets self-hosted media server administrators by providing features like invite-based account creation, granular user controls, and integration with popular chat platforms for notifications and password resets. The primary benefit is streamlining user onboarding and ongoing management, reducing manual effort and enhancing user experience.

How It Works

jfa-go operates as a web service that interfaces with Jellyfin/Emby APIs. It leverages an invite system where administrators can generate unique, time-limited, or usage-limited invite links. These links can be distributed via email, Discord, Telegram, or Matrix. Upon using an invite, new users can self-register with their chosen credentials. The system supports profile-based permission assignments, ensuring new users receive pre-configured access levels and UI layouts. Integrations with Ombi and Jellyseerr allow for automatic user synchronization.

Quick Start & Requirements

  • Primary install: Docker (docker create --name "jfa-go" -p 8056:8056 -v /path/to/.config/jfa-go:/data hrfee/jfa-go). Debian/Ubuntu (sudo apt-get install jfa-go). Arch (AUR). Precompiled binaries available.
  • Prerequisites: Jellyfin 10.9.8+ or Emby. For Linux GUI builds, libappindicator3-1 (Debian/Ubuntu), libappindicator-gtk3 (Fedora), or libappindicator (Alpine) is required. Matrix E2EE requires libolm(-dev). Password resets require access to Jellyfin's data directory.
  • Setup: Initial setup via a web wizard at localhost:8056.
  • Docs: Wiki

Highlighted Details

  • Invite-based account creation with customizable validity and usage limits.
  • Integrates with Jellyseerr/Ombi for user synchronization.
  • Supports Telegram, Discord, and Matrix for notifications, verification, and password resets.
  • "My Account" page for users to manage their profile, reset passwords, and send referrals.

Maintenance & Community

Project status is "Active-ish" with development occurring during breaks. Compatibility with Jellyfin 10.9.8 is maintained. Translations can be contributed via Weblate.

Licensing & Compatibility

The license is not explicitly stated in the README. Compatibility for commercial use or closed-source linking is not specified.

Limitations & Caveats

The project's development pace is dependent on the author's study schedule, potentially leading to slower feature development and bug fixes. Ombi integration is noted as "risky." The license status requires clarification for commercial adoption.

Health Check
Last Commit

2 weeks ago

Responsiveness

1 day

Pull Requests (30d)
0
Issues (30d)
3
Star History
11 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.