Track your Kobo reads on Anilist and Hardcover using Calibre-Web and Calibre databases
Warning
This project is an early-stages WIP
Admittedly this is quite a niche tool. It's only really useful in the following scenario:
- You own a Kobo eReader
- You store all of your books in a Calibre library
- You run a Calibre-Web server
- You have configured your Kobo eReader to use the Calibre-Web Kobo Integration as the API endpoint
-
Download the GitHub Release binaries compiled for MacOS, Linux and Windows (arm64, amd64 and i386)
-
Install with
go install
go install github.com/RobBrazier/readflow@latest
Once installed, you'll need to configure the CLI. This can be done by following the instructions in the below command:
readflow setup
This will take you through a guided form to get all the information required for the application
Once setup has been completed, you can run
readflow sync
And this will pull recent reads and sync them to the providers configured
Important
Currently you are required to set calibre identifiers for the providers in the books you want to sync. Any books missing these will be skipped.
e.g. hardcover:the-hobbit or anilist:53390
This is a oneshot
CLI tool, so if you want to run it frequently, you'll need
to configure a cron job
On Linux systems this can be done with
crontab -e
As an example, the cron job I use is:
0 * * * * /usr/local/bin/readflow sync 2>> /var/log/readflow.log
This runs every hour on the hour
docker pull ghcr.io/robbrazier/readflow
Name | Default | Notes |
---|---|---|
SOURCE | database | Leave as default - there are no other options currently |
TARGETS | anilist,hardcover | Defaults to all targets |
COLUMN_CHAPTER | false | Only used for Anilist - set if you want to count chapters |
DATABASE_CALIBRE | /data/metadata.db | Mount your metadata.db here |
DATABASE_CALIBREWEB | /data/app.db | Mount your app.db here |
CRON_SCHEDULE | @hourly | See crontab.guru for syntax |
TOKEN_ANILIST | Anilist token - Retrieve from here | |
TOKEN_HARDCOVER | Hardcover token - Retrieve from here |
docker run -e CRON_SCHEDULE="@daily" ghcr.io/robbrazier/readflow
docker run ghcr.io/robbrazier/readflow sync