readflow

command module
v0.0.0-...-07aeb4e Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 16, 2024 License: MPL-2.0 Imports: 1 Imported by: 0

README

readflow

Track your Kobo reads on Anilist and Hardcover using Calibre-Web and Calibre databases

[!WARNING] This project is an early-stages WIP

Pre-Requisites for this to actually be useful

Admittedly this is quite a niche tool. It's only really useful in the following scenario:

  1. You own a Kobo eReader
  2. You store all of your books in a Calibre library
  3. You run a Calibre-Web server
  4. You have configured your Kobo eReader to use the Calibre-Web Kobo Integration as the API endpoint

Installation

  1. Download the GitHub Release binaries compiled for MacOS, Linux and Windows (arm64, amd64 and i386)

  2. Install with go install

    go install github.com/RobBrazier/readflow@latest
    

Setup

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

Sync

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

Calibre-Web Identifier Format Calibre Identifier Format

Running on a Schedule

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

Running via Docker

docker pull ghcr.io/robbrazier/readflow
Environment Variables
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
Run modes
Cron Job
docker run -e CRON_SCHEDULE="@daily" ghcr.io/robbrazier/readflow
One-off Sync
docker run ghcr.io/robbrazier/readflow sync

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
schemas

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL