Jellystat is a free and open source Statistics App for Jellyfin
 
 
 
 
Go to file
Thegan Govender e691980b6c
Update docker-latest.yml
2024-06-15 18:36:14 +02:00
.github Update docker-latest.yml 2024-06-15 18:36:14 +02:00
.vscode Task and Logging Changes 2023-09-03 20:47:52 +02:00
backend consolidated validation and normalisation of of url to setconfig functions 2024-06-13 22:03:26 +02:00
public Changes to Recently Added Items 2024-05-24 18:53:41 +02:00
screenshots Dependency+Logging cleanup 2023-07-01 23:33:28 +02:00
src consolidated validation and normalisation of of url to setconfig functions 2024-06-13 22:03:26 +02:00
.dockerignore Added .dockerignore file to speed up local image builds 2023-11-11 17:06:44 +02:00
.eslintrc.cjs feat: change webpack to vite 2023-11-07 16:44:45 +08:00
.gitignore fix: added more folder for gitignore 2023-11-07 16:54:55 +08:00
Dockerfile chore: Add entry.sh to Dockerfile for build process 2024-06-14 16:10:09 +02:00
LICENSE Create LICENSE 2023-04-04 14:56:13 +02:00
README.md chore: Update Readme 2024-06-04 19:30:23 +02:00
build.sh users page + db auto create(WIP) 2023-03-23 22:37:04 +02:00
docker-compose.yml ci: update realibility of ci and docker-compose 2024-05-09 22:28:26 +02:00
entry.sh feat: docker secrets 2024-01-09 21:19:19 +08:00
index.html fix: added back logo and icon 2023-11-08 12:17:27 +08:00
package-lock.json fix to replace is-url-http library due to docker build issues 2024-06-06 12:52:47 +02:00
package.json fix to replace is-url-http library due to docker build issues 2024-06-06 12:52:47 +02:00
release.sh improve release 2023-10-06 18:08:35 +02:00
vite.config.js added documentation regarding env variables 2024-05-10 21:19:11 +02:00

README.md

Jellystat is a free and open source Statistics App for Jellyfin! (This project is still in development - expect some weirdness)

Current Features

  • Session Monitoring and logging
  • Statistics for all Libraries and Users
  • Watch History
  • User Overview and activity
  • Watch statisitcs
  • Backup and restore Data
  • Auto sync library items
  • Jellyfin Statistics Plugin Integration

Required Development

  • Responsive UI
  • Code Optimizations
  • Security Testing
  • More Validations and Error Handling
  • Multi-Server support
  • More to come

Environmental Variables

Env Default Example Description
POSTGRES_USER REQUIRED null postgres Username that will be used in postgres database
POSTGRES_PASSWORD REQUIRED null postgres Password that will be used in postgres database
POSTGRES_IP REQUIRED null jellystat-db or 192.168.0.5 Hostname/IP of postgres instance
POSTGRES_PORT REQUIRED null 5432 Port Postgres is running on
JWT_SECRET REQUIRED null my-secret-jwt-key JWT Key to be used to encrypt JWT tokens for authentication
JS_BASE_URL / / Base url
JS_USER null User Master Override User in case username or password used during setup is forgotten (Both JS_USER and JS_PASSWORD required to work)
JS_PASSWORD null Password Master Override Password in case username or password used during setup is forgotten (Both JS_USER and JS_PASSWORD required to work)
POSTGRES_DB jfstat jfstat Name of postgres database
REJECT_SELF_SIGNED_CERTIFICATES true false Allow or deny self signed SSL certificates
JS_GEOLITE_ACCOUNT_ID null 123456 maxmind.com user id to be used for Geolocating IP Addresses (Can be found at https://www.maxmind.com/en/accounts/current/edit)
JS_GEOLITE_LICENSE_KEY null ASDWdaSdawe2sd186 License key you need to generate on maxmind to use their services

Getting Started with Development

  • Clone the project from git
  • set your env variables before strating the server (Variable names as per Environmental Variables above).
  • Run npm install to install necessary packages
  • Run npm run start-server to only run the backend nodejs server
  • Run npm run start-client to only run the frontend React UI
  • Run npm run start-app to run both backend and frontend at the same time

When contributing please ensure to log a pull request on the unstable branch

Launching Jellystat using Docker

Check out our dockerhub to run Jellystat: https://hub.docker.com/r/cyfershepard/jellystat

Environment variables from files (Docker secrets)

You can set any environment variable from a file by using the prefix FILE__

As an example:

jellystat:
  environment:
    FILE__MYVAR: /run/secrets/MYSECRETFILE

Will set the environment variable MYVAR based on the contents of the /run/secrets/MYSECRETFILE file. see docker secrets for more info.

Screenshots

Support

API Documentation

To-do