I have a lot of devices: my two laptops, my android phones, my pad and my kindle, and I always read the same book in different devices. Therefore it has been a problem for a long time for me to sync my books across different devices. And after my tries these days, the final solution came up: to use OneDrive for sync books, calibre-web on server side to offer webview, calibre on PC to read, Moon+ on Android to read and GDrive for android to sync reading process.
Maybe the whole system seems too complex, but I think maybe you can take one part or serveral parts. For example you may do not have server, so calibre on PC is a great choice; you may have iPhone instead of android phones, maybe there are also some readers which can fetch OPDS so that you can also sync it. I hope my experience could help you in any ways.
In this part I will combing my requirements and tell you why I use such a complex way to sync my books, and in the other parts I will discuss how to make it in different devices.
First of all, I listed what I needed while reading and what the "shelf" should be like. It should have the following features:
- Sync the books (including the information and the file).
- Auto search the cover and the introduction of the books.
- Better to have a modern web view for using and display my shelf everywhere.
- Sync the reading process (whether I have read the book and where I stopped last time).
And finally I combined several tools together and meet the requirements. Here's what it needs:
- a cloud server
- an onedrive account (in fact I prefer dropbox however it syncs slow in China)
- a google drive account for sync reading process (because Moon+ only supports dropbox and gdrive)
Every software has its functions, however none of them can achieve all the goals I listed above, so that I must combine them together.
- Calibre: Calibre is "the one stop solution to all your e-book needs" (the official site says). However, it doesn't have ways to sync across internet (though it has ways to send books to kindle, I need to obtain the books through internet). So only calibre is not enough, but it is the core part. And what's more, it doesn't have the way to label whether the book has been read or not (its label is just a bullshit).
- Calibre-web: Calibre-web is a web app for browsing, reading and downloading e-books stored in Calibre database. By Calibre-web, we can browsing the books we have and download them easily. But the problem is that it's hard to upload and update new books and to recognize them on the server and in command line. So we need to operate and import the new books locally and to sync it onto the server. And here OneDrive came.
- OneDrive: OneDrive is for sync the books across different devices. GDrive is blocked in China and the speed is really slow. So OneDrive becomes the best way in China to sync. If you are not in China, maybe GDrive is better because Calibre-web support GDrive so you don't need rclone to mount onedrive on server side.
- Rclone: a softeware on server side to mount onedrive and use it in server.
- Moon+: an android APP which supports opds, so you can import the book though web.
- GDrive: Moon+ only supports GDrive or Dropbox to sync reading process.
In next parts I will introduce how to make the whole system run in different devices.