mediatracker
v0.2.4
Published
Self hosted media tracker for movies, tv shows, video games, books and audiobooks
Downloads
274
Readme
MediaTracker ·
Self hosted platform for tracking movies, tv shows, video games, books and audiobooks, highly inspired by flox
Demo
mediatracker.app
Username: demo
Password: demo
API Documentation
https://bonukai.github.io/MediaTracker/
Installation
Building from source
git clone https://github.com/bonukai/MediaTracker.git
cd MediaTracker
npm install
npm run build
npm run start
From npm
npm install -g mediatracker
mediatracker
Database file, logs and assets will be saved in $HOME/.mediatracker
With docker
Version Tags
| Tag | Description | | -------- | --------------- | | latest | stable releases | | unstable | pre-releases |
docker volume create assets
docker run \
-d \
--name mediatracker \
-p 7481:7481 \
-v /home/YOUR_HOME_DIRECTORY/.config/mediatracker/data:/storage \
-v assets:/assets \
-e TMDB_LANG=en \
-e AUDIBLE_LANG=us \
-e TZ=Europe/London \
bonukai/mediatracker:latest
With docker-compose
version: "3"
services:
mediatracker:
container_name: mediatracker
ports:
- 7481:7481
volumes:
- /home/YOUR_HOME_DIRECTORY/.config/mediatracker/data:/storage
- assetsVolume:/assets
environment:
SERVER_LANG: en
TMDB_LANG: en
AUDIBLE_LANG: us
TZ: Europe/London
image: bonukai/mediatracker:latest
volumes:
assetsVolume: null
Parameters
| Parameter | Function | | ----------- | ----------------------- | | -p 7481 | Port web API | | -v /storage | Directory with database | | -v /assets | Posters directory | | -v /logs | Logs directory |
Environment variables
| Name | Description |
| ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| TMDB_LANG | ISO 639-1 country code, one of: om
, ab
, aa
, af
, sq
, am
, ar
, hy
, as
, ay
, az
, ba
, eu
, bn
, dz
, bh
, bi
, br
, bg
, my
, be
, km
, ca
, zh
, co
, hr
, cs
, da
, nl
, en
, eo
, et
, fo
, fj
, fi
, fr
, fy
, gl
, ka
, de
, el
, kl
, gn
, gu
, ha
, he
, hi
, hu
, is
, id
, ia
, ie
, ik
, iu
, ga
, it
, ja
, jw
, kn
, ks
, kk
, rw
, ky
, rn
, ko
, ku
, lo
, la
, lv
, ln
, lt
, mk
, mg
, ms
, ml
, mt
, mi
, mr
, mo
, mn
, na
, ne
, no
, oc
, or
, ps
, fa
, pl
, pt
, pa
, qu
, rm
, ro
, ru
, sm
, sg
, sa
, gd
, sr
, sh
, st
, tn
, sn
, sd
, si
, ss
, sk
, sl
, so
, es
, su
, sw
, sv
, tl
, tg
, ta
, tt
, te
, th
, bo
, ti
, to
, ts
, tr
, tk
, tw
, ug
, uk
, ur
, uz
, vi
, vo
, cy
, wo
, xh
, yi
, yo
, za
, zu
|
| AUDIBLE_LANG | ISO 639-1 country code, one of: au
, ca
, de
, es
, fr
, in
, it
, jp
, gb
, us
|
| SERVER_LANG | ISO 639-1 country code, one of: da
, de
, en
, es
, fr
, ko
, pt
|
| DATABASE_CLIENT | Database client: better-sqlite3
or pg
|
| DATABASE_PATH | Only for sqlite, path to database |
| DATABASE_URL | Connection string |
| DATABASE_HOST | Database host |
| DATABASE_PORT | Database port |
| DATABASE_USER | Database user |
| DATABASE_PASSWORD | Database password |
| DATABASE_DATABASE | Database name |
| IGDB_CLIENT_ID | IGDB API key, needed for game lookup |
| IGDB_CLIENT_SECRET | IGDB secret |
| PUID | UserID |
| PGID | GroupID |
| TZ | Timezone, for example Europe/London
, see full list |
| ASSETS_PATH | Directory for posters and backdrops, defaults to '$HOME/.mediatracker/img' |
| LOGS_PATH | Directory for logs, defaults to '$HOME/.mediatracker/logs' |
| HOSTNAME | IP address that the server will listen on |
| PORT | Port that the server will listen on |
Heroku
Building docker image
docker build --tag mediatracker:latest https://github.com/bonukai/MediaTracker.git
docker run -p 7481:7481 mediatracker
Features
- notifications
- calendar
- multiple users
- REST API
- watchlist
- docker image
- import from Trakt
- import from goodreads
Import
| Service | Imported data | | -------------------------------------- | ---------------------------------------------- | | Trakt | Watchlist, watched history, ratings | | goodreads | Read, Currently Reading, Want to Read, ratings |
Metadata providers
| Provider | Media type | Localization | | ------------------------------------------------------------------------------ | -------------- | :----------: | | TMDB | movie, tv show | ✓ | | IGDB* | video game | ✗ | | Audible API | audiobooks | ✓ | | Open Library | books | ✗ |
* IGDB has a limit of 4 requests per second. Because of that IGDB API key is not provided with MediaTracker, it can be acquired here and set in http://localhost:7481/#/settings/configuration
Notification platforms
Integrations
- Jellyfin - Plugin, minimum MediaTracker version:
0.1.0
- Plex - Generate Application token in your MediaTracker instance, and add a webhook in plex
[your MediaTracker url]/api/plex?token=[MediaTracker Application Token]
- Kodi - Plugin, minimum MediaTracker version:
0.1.0
Contributors
- URBANsUNITED (German translation)