jfa-go is a user management app for Jellyfin (and now Emby) that provides invite-based account creation as well as other features that make one's instance much easier to manage.
a rewrite of jellyfin-accounts (original naming for both, ik π).
- π§ Invite based account creation: Send invites to your friends or family, and let them choose their own username and password without relying on you.
- Send invites via a link and/or email
- Granular control over invites: Validity period as well as number of uses can be specified.
- Account profiles: Assign settings profiles to invites so new users have your predefined permissions, homescreen layout, etc. applied to their account on creation.
- Password validation: Ensure users choose a strong password.
 
- β User expiry: Specify a validity period, and new users accounts will be disabled/deleted after it. The period can be manually extended too.
- π Ombi Integration: Automatically creates Ombi accounts for new users using their email address and login details, and your own defined set of permissions.
- Account management: Apply settings to your users individually or en masse, and delete users, optionally sending them an email notification with a reason.
- Telegram/Discord/Matrix Integration: Verify users via a chat bot, and send Password Resets, Announcements, etc. through it.
- π¨ Email storage: Add your existing users email addresses through the UI, and jfa-go will ask new users for them on account creation.
- Email addresses can optionally be used instead of usernames
 
- π Password resets: When users forget their passwords and request a change in Jellyfin, jfa-go reads the PIN from the created file and sends it straight to the user via email/telegram.
- Notifications: Get notified when someone creates an account, or an invite expires.
- π£ Announcements: Bulk message your users with announcements about your server.
- Authentication via Jellyfin: Instead of using separate credentials for jfa-go and Jellyfin, jfa-go can use it as the authentication provider.
- Enables the usage of jfa-go by multiple people
 
- π Customizations
- Customize emails with variables and markdown
- Specify contact and help messages to appear in emails and pages
- Light and dark themes available
 
Note: TrayIcon builds include a tray icon to start/stop/restart, and an option to automatically start when you log-in to your computer. For Linux users, these builds depend on the libappindicator3-1/libappindicator-gtk3/libappindicator package for Debian/Ubuntu, Fedora, and Alpine respectively.
docker create \
             --name "jfa-go" \ # Whatever you want to name it
             -p 8056:8056 \
            # -p 8057:8057 if using tls
             -v /path/to/.config/jfa-go:/data \ # Path to wherever you want to store the config file and other data
             -v /path/to/jellyfin:/jf \ # Path to Jellyfin config directory, ignore if using Emby
             -v /etc/localtime:/etc/localtime:ro \ # Makes sure time is correct
             hrfee/jfa-go # hrfee/jfa-go:unstable for latest build from gitsudo apt-get update && sudo apt-get install curl apt-transport-https gnupg
curl https://apt.hrfee.dev/hrfee.pubkey.gpg | sudo apt-key add -
# For stable releases
echo "deb https://apt.hrfee.dev trusty main" | sudo tee /etc/apt/sources.list.d/hrfee.list
# ------
# For unstable releases
echo "deb https://apt.hrfee.dev trusty-unstable main" | sudo tee /etc/apt/sources.list.d/hrfee.list
# ------
sudo apt-get update
# For servers
sudo apt-get install jfa-go
# ------
# For desktops/servers with GUI (has dependencies)
sudo apt-get install jfa-go-tray
# ------Available on the AUR as:
- jfa-go (stable)
- jfa-go-bin (pre-compiled, stable)
- jfa-go-git (nightly)
Download precompiled binaries from:
- The releases section (stable)
- Buildrone (nightly)
unzip the jfa-go/jfa-go.exe executable to somewhere useful.
- For *nix/macOS users, chmod +x jfa-gothen place it somewhere in your PATH like/usr/bin.
Run the executable to start.
If you're using docker, a Dockerfile is provided that builds from source.
Otherwise, full build instructions can be found here.
Simply run jfa-go to start the application. A setup wizard will start on localhost:8056 (or your own specified address). Upon completion, refresh the page.
Usage of jfa-go:
  start
	start jfa-go as a daemon and run in the background.
  stop
	stop a daemonized instance of jfa-go.
  systemd
	generate a systemd .service file.
  -config, -c string
    	alternate path to config file. (default "/home/hrfee/.config/jfa-go/config.ini")
  -data, -d string
    	alternate path to data directory. (default "/home/hrfee/.config/jfa-go")
  -debug
    	Enables debug logging.
  -help, -h
    	prints this message.
  -host string
    	alternate address to host web ui on.
  -port, -p int
    	alternate port to host web ui on.
  -pprof
    	Exposes pprof profiler on /debug/pprof.
  -swagger
    	Enable swagger at /swagger/index.html
jfa-go does not run as a daemon by default. Run jfa-go systemd to create a systemd .service file in your current directory, which you can copy into ~/.config/systemd/user or somewhere else.
If you're switching from jellyfin-accounts, copy your existing ~/.jf-accounts to:
- XDG_CONFIG_DIR/jfa-go(usually ~/.config/jfa-go) on *nix systems,
- %AppData%/jfa-goon Windows,
- ~/Library/Application Support/jfa-goon macOS.
(or specify config/data path  with -config/-data respectively.)
See CONTRIBUTING.md.
For translations, use the weblate instance here. You can login with github.
Big thanks to those who sponsor me. You can see them below:



