---
source_url: "https://nicholaslyz.com/blog/2023/10/17/syncing-my-kindle-with-calibre-web-koreader-and-syncthing/"
title: "Syncing my Kindle with calibre-web, KOReader and Syncthing - Nicholas"
mirrored_at: 2026-08-17T01:33:15.786Z
host: nicholaslyz.com
cited_in_42a: true
mirror_canonical: "https://index.42a.ai/nicholaslyz.com/blog/2023/10/17/syncing-my-kindle-with-calibre-web-koreader-and-syncthing/index"
---

> **Original source:** https://nicholaslyz.com/blog/2023/10/17/syncing-my-kindle-with-calibre-web-koreader-and-syncthing/

I own an Amazon Kindle [Paperwhite](https://en.wikipedia.org/wiki/Amazon_Kindle?oldformat=true#Kindle_Paperwhite_\(second_iteration\)) (2nd generation). For the longest time, I was looking for a solution that would enable me to sync my reading progress between my phone and Kindle, as well as transfer books between all devices wirelessly.

I finally managed to accomplish this with [Syncthing](https://syncthing.net/), [KOReader](https://github.com/koreader/koreader) and [Calibre-Web](https://github.com/janeczku/calibre-web).

[Syncthing](https://syncthing.net/) is a FOSS peer to peer decentralized file-sharing program. I have written about the network [topology](https://nicholaslyz.com/blog/2023/10/17/syncthing-topology/) I use.

[KOReader](https://github.com/koreader/koreader) is an e-ink document viewer, which supports not only the Kindle, but Android, Linux and other platforms. Notably, it offers a [progress-sync](https://github.com/koreader/koreader/wiki/Progress-sync) plugin, as well as support for downloading books from [OPDS](https://en.wikipedia.org/wiki/Open_Publication_Distribution_System) catalogs. Finally, there is also a [Wallabag](https://wallabag.org/) plugin, which lets me download and sync articles from my Wallabag server.

[Calibre-Web](https://github.com/janeczku/calibre-web) is a web interface for Calibre (the best e-book organizer), and can also function as an [OPDS](https://en.wikipedia.org/wiki/Open_Publication_Distribution_System) server, from which devices with [KOReader](https://github.com/koreader/koreader) can download books from. There is a Docker container available as well.

## Workflow

```
flowchart TD
    Ebooks --> Calibre[Calibre Desktop]
    Ebooks --> Calibre-Web
    Calibre <--> Library[Calibre library]
    Calibre-Web <--> Library
    Calibre-Web -->|downloaded on demand to| Syncthing
    Syncthing[Shared Syncthing folder] <--> Phone
    Syncthing <--> Kindle
    Progress-sync <--> Phone
    Progress-sync <--> Kindle
```

After I obtain ebooks, I either use Calibre to upload the ebook my shared Calibre library (on my server), or upload it directly into Calibre-Web.

Then, on either my phone or Kindle, I download the ebook into a shared Syncthing folder. This synchronizes the ebook across all my devices.

Reading progress is also synced across my devices with the KOReader [progress-sync](https://github.com/koreader/koreader/wiki/Progress-sync) plugin.

## Setting it up

1.  Jailbreak and install KOReader on your Kindle by following this [guide](https://github.com/koreader/koreader/wiki/Installation-on-Kindle-devices).
2.  Setup [Calibre-Web](https://github.com/janeczku/calibre-web) in a method of your choice. I use this [Docker image](https://docs.linuxserver.io/images/docker-calibre-web).
3.  Install Syncthing on your Kindle by following this [guide](https://github.com/gutenye/syncthing-kindle).
4.  Configure a common folder for Syncthing on your devices to sync Ebooks to.
5.  Add your Calibre-Web OPDS url to your devices ([guide](https://github.com/koreader/koreader/wiki/OPDS-support)).
6.  Setup [progress-sync](https://github.com/koreader/koreader/wiki/Progress-sync) on your devices
7.  Optionally, setup Wallabag support ([guide](https://github.com/koreader/koreader/wiki/Wallabag)).

Now, your ebooks should be syncing across your devices, as well as their reading progress.