Just a packaged shiny app relying on {tRakt} to get data out of https://trakt.tv and display it nicely.
You can find it currently deployed at attrakttv.tadaa-data.de.
Please open an issue if you encounter crashes.
You can install the latest version of attrakttv from GitHub:
remotes::install("jemus42/attrakttv")
The app needs both credentials for the trakt.tv and the
fanart.tv API, see attrakttv.env-sample
for reference. Plug in
your keys and either rename the file to .Renviron
in the current
working directory or copy these values to your user/global .Renviron
.
Then you can call attrakttv::attrakttv_app()
and try to add a show,
which will then hopefully open a browser window displaying a trakt.tv
PIN for you to enter at the R console.
You can also achieve this by calling any data-retrieving function from
the {tRakt}
package.
The the downloaded show data is stored in a SQLite database located
under ~/.local/attrakttv/db/tRakt.db
by default, but you can change
that value via the aforementioned configuration file.
Since this thing requires API keys for both https://trakt.tv and
https://fanart.tv, you’ll need to create accounts and get credentials
for those first.
Copy the file via cp attrakttv.env-sample attrakttv.env
and plug in
your values.
Next you’ll need to create a {httr}
OAuth2 token. The easiest way is
to call some function from {tRakt}
that uses the trakt.tv API
(e.g. tRakt::search_query("Counterpart")
) which will then prompt you
for an authentication PIN and open a corresponding browser window. Once
set up, the token should be located at .httr-oauth
.
Once both attrakttv.env
and .httr-oauth
you can run
docker build -t attrakttv .
docker run --rm -p 3838:3838 --run-as=shiny attrakttv
And the app will be running at localhost:3838
.
Note that currently the SQLite database is ephemeral.
You can use docker-compose
with the included docker-compose.yml
which will put the database in a volume called trakt_db
. This is
mapped to a local volume you have to define via environment variable set
in .env
, so cp .env-sample .env
and plug in your desired path (which
must exist).
Regarding the volume thing: This was helpful
Please note that the ‘attrakttv’ project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.