Kavita – Self-hosted digital library which supports a vast array of file formats
kavitareader.com
kavitareader.com
And a great name too. Kavita means poem or poetry in Sanskrit and pretty much all Indic languages.
I'm sure others will point out the pros/cons vis-a-vis Calibre reader. But each serves a different niche. This one seems particularly geared towards comics. So cannot expect all the bells and whistles of Calibre.
Thanks for posting this. They don't seem to have that in their FAQs, and I find that's a very common thing. I often wonder about the naming of a project, and too often it's far too hard to find out. (In this case, it is simple enough to google "kavita meaning" and find out, but I feel like I find myself unable to find out for lots of projects)
> Kavita means poem or poetry in Sanskrit and pretty much all Indic languages.
Interestingly, in Semitic languages Kavita means writing or written things.Edit: Setup Kavita using Docker, and the directory structure isn't maintained.
I'm very tempted to write a Caddy plugin for OPDS to solve for this.
This and Calibre seems focused on ebooks, rather than on documents.
Something like Xerox Docushare but only for ones own private documents.
Doesn't let you know of this password format requirement in an older Chrome browser. It simply sits there dumbly and doesn't let you register.
Analytics (opt-out rather than opt-in) sent back to server with a pinky promise not to send any other data.
Why do I need Twitter javascript and Twitter cookies included in my e-reader? No, just no. Why do I have to be on-guard against what tracking and additional cruft is included in my own server?!?
Paging through the library 30 books at a time rather than scrolling. The 1990's web called asking for its UI back but I didn't pick up because we text these days.
Messes with the directory contents and formats. That is a hard pass from me.
I'll stick with the sucky broken system I have right now than a shiny new broken system that still sucks but also messes with my directory structure.
Great effort, but your execution lands as wide of the mark as every other solution out there.
In fact pointing out that it contains telemetry and JS from Twittwr seem pretty important things to point out to people, at least in my book.
At the moment, in terms of metadata Kavita is pretty limited. The current release is adding more metadata support (local) and attempting at downloading metadata from external sources (nothing else really does this except other tools).
It really depends on you and your library. I personally just want to be able to read my stuff and focus on things like genres and put collections and read lists together (for custom read orders), so Kavita is the best solution. If you want in-depth metadata, then you're better off setting up Calibre-web or Komga.
Doesn’t sound very ESG. What is rocket fuel in digital library contexts, and why is rocketing desirable to feature in a digital bookshelf’s heading blurb?
Lets see if this jinxes it!
But you can download files and use native readers already.
I know that there are page syncing services, maybe even a self hostable one from Mozilla but I'm lazy about this. After all my phone is always close to me and the screen is even wider than newspaper columns used to be.
Too bad browsers are too crippled to build PWAs with the power of native apps. Thanks for the effort anyway :-)
P.S. I know you are the author of the code and not trying to state anything about the code, but merely that I would be careful exposing it to the internet at this time.
Also got interested in competitors so tried a couple. Here are my notes:
1) docker works well. UI is fine, was able to figure out without much effort.
2) not sure what is the difference manga and comics? For some reason it didn’t scan some Pdfs as manga but did as comics.
3) wasn’t able to make caliber-web docker work, but tried ubooquity. For some reasons PDFs render sharper with ubooquity than with Kavita. It is fairly obvious and checked with a few. All settings are default. ubooquity was also faster, but I prefer the UI of Kavita.
I done through this route before. From the best of my crappy memory, you need to make sure that you create calibre library before starting the web part. You would have to do it through the standalone app.
And for docker, it kinda a fickle from I remember. you have to bind the calibre-web to your local calibre library folder. You need to enable the docker to access to that folder. It took me multiple guides to understand how to make this works.
I have a guide for the Docker with local filesystem that helps me to make it work[1],[2]. I remember that Docker is particular with file path and you have to use the Docker file path convention, they uses forward slashes instead backslashes like Windows.
[1] https://flaviocopes.com/docker-access-files-outside-containe...
[2] https://stackoverflow.com/questions/44876778/how-can-i-use-a...
https://github.com/linuxserver/docker-calibre-web/issues/162
The folder and port mapping was done, I'm familiar with using Docker.
Now I remember there is one more step, I fixed it by putting the library in the root folder of the drive. That solved the issue for me. I only tried it for a day and shut it down.
I am planning to get RPI and put calibre-web in it. It still in my todo list.
I've been a big fan of the Plex approach for curation.
Would be awesome to integrate some one-click addition from high-quality ebook sources like Standard Ebooks (does it support upstream OPDS sources?).
We support OPDS for consumption, but not for consuming content. I have some loose plans to support upstream sites/sources, but nothing concrete nor planned.
If it could download "to-read" books/manga onto local storage and then sync page numbers when you connect to wifi that would be amazing.
If you're talking more like how Plex does sync, I literally just tried that with a Progressive Web App last week, but it didn't pan out. There wasn't enough control with a PWA (which means I'm going to have to write something native-ish in the future).
The advantage is you don't have to install anything. Whatever books you upload are simply stored in your browser (might be an issue on iOS). If you want to sync, you login into your Google Drive, and books and positions are synced via it.
It is not correctly set to be a PWA, but if you're offline and the tab is still open, it will continue to work.
https://www.goodfirms.co/blog/best-free-open-source-library-...
Good luck!
In case you need ideas for future features :)
Are you also providing the reading experience or sending the converted file raw to use in another program's reader?
This works particularly well from Kindle, so I never have to connect it to a computer, and I don't have any email size limit which is quite easy to go over with comics
My hack for reading Manga is to pack them up into a PDF and download them to a tablet where I can read them unconnected.
(e.g. there is a word that starts with "cr" and ends with "ap" and it's no accident. I had to try about 6 different QR code reader apps to find one that didn't crash on launch on my Samsung tablet.)
Could it then be used as a public library of one's own works?
a quick check seems like this is a docker(running ubuntu inside, code is in CSharp) with a web interface, while calibre is a binary to install directly.
If all this feels a bit sad it's because it is.
What I love about Kavita is that it seems to be much more social because I can lend books to a friend. I haven't checked if this is supported but the killer feature for me (for which I'd adjust my above rules/behavior and switch to Kavita) would be collaborative reading where we can put books on each others reading list, share notes or comments, or view each others progress. Like Netflix guest accounts with the difference that you can actually do things together (so way beyond Netflix today)
The "sharing" sounds a bit intrusive but it would help me a great deal in keeping up with my daily reading goals knowing that it's public to friends. It would be cool for book clubs too. Kavita is the first software where such features would/could make sense (if not then maybe in a fork?)
Right now I convert all my formats (epub etc) into pdf and then after disabling my network, use zathura with a dark theme to read. I keep notes with markdown files and once I've finished the book I reneame the pdf from book_title to read-book_title. Reading it a second time the filename becomes read2-book_title and so on ... When I share a book I send the file to a friend (only if they ask) who put it on their reading list and (10/10) forget about it forever.
It's a dumb approach for single user where the goal is to read as much as I did as a child without distraction. It's actually worse an experience than having the physical book in my hand which I can smell and then put on a shelf like a trophy and be proud of or lend it to a friend who will only ask for it if genuinely curious because they know once they return it they probably need to say a word or 3 about what they thought of it (or admit they didn't read it). With digital books I often finish a book and still don't know the author because the only time I've seen the cover was when I was at page one. And even the title I forget quickly regardless how good it was because of the same reason.
Kavita makes me a tiny bit excited, ... if not about it's current state, then about the potential it could have.
Not exactly a radical recommendation or anything, but have you tried a dedicated e-reader? No distractions possible that way, and you get the all the usual benefits -- e-ink screen, weeks-long battery, etc. I enjoy mine.
> With digital books I often finish a book and still don't know the author because the only time I've seen the cover was when I was at page one
Kobos (maybe Kindles as well?) can display the cover of the current novel while they're sleeping.
One user does everything by genres, so /comics/romance/series, another does it by publisher and years. The problem with uploading is that there is no right answer. It's better to just inform Kavita that new files are on the disk and let the scan pick them up than try to build a complicated solution that is going to meet everyone's niche needs.
It shows the catalogue of your titles and allows reading inline (in the browser) as well.