Kavita is a fast, feature rich, cross platform reading server. Built with the goal of being a full solution for all your reading needs. Setup your own server and share your reading collection with your friends and family.
GPL-3.0 License
Published by majora2007 about 3 years ago
v0.4.7 is here with a large rework on how Kavita handles comics. Working with our community and some heavy comic rack users, we went to work building out the most common naming conventions. From testing for release, nearly all comics out of the box were matching correctly.
In addition, as is custom, quite a few other features made it into the release as well. The most important is a complete rewrite in how Kavita performs database updates in the Scan Loop. As mentioned in the last release, the performance improvements for memory was split into two parts, this release sees the completion of the second part. Kavita now breaks up work into smaller chunks and processes them. In addition, more pages will respond to updates from the Server, rather than making you refresh.
To wrap up, I want to highlight a few enhancements made that I think deserve a shout-out. First, we have support for half-volumes, a feathub request. Now you can have Volume 1.5 and Kavita will properly recognize and order it. Second, the book reader got some extra love and the resume feature that restores your last scroll position is now accurate to the line. Lastly, another feathub request has been implemented which is the ability to disable authentication for Kavita. You can disable the need to have passwords on your account for non-admins and login directly with your account.
Next up is an overhaul to the Search code to make it more flexible and cleanup a few bugs. Next release will be the last bite sized release before the first pass of metadata support.
Published by majora2007 about 3 years ago
This was supposed to be a small update to add reading lists, but I got carried away again. Instead, while you still get reading lists, you also get a TON of performance improvements, and UX enhancements across the board.
So what are Reading Lists? Reading lists are an order list of chapters that you have complete control over. Great for things like story arcs between multiple series, series that have unique names to read the full arc, or just a way to collect new chapters on your server to read them in one sitting. What's great about our reading lists is you can read through them in the order you defined without closing the reader. This means that once you start reading, even if the first item is a manga and the next is a book, Kavita will handle all that transition logic for you, so you just get the no distractions experience.
Next up is the performance improvements, where I wanted to tackle the memory usage in Kavita. I've planned to do this in 2 passes and what you're seeing now is the first pass. Every API in the system was looked at and optimized for speed and memory pressure. The goal was to reduce the amount of memory used while speeding up how fast Kavita processes items. This lead to changing how we handle cover images resulting in huge gains in memory pressure, but also slightly slower scans and a large migration off the bat. If you have a large library, the first run will be slow as we migrate the cover files to the new storage system. If something goes wrong, a simple scan will fix everything.
This was a really fun release tackling a lot of fun projects, like continuous reading in the webtoon reader and book reader, the performance optimizations, and the multi-selection functionalities. It is jammed pack full of new stuff not mentioned (like WebP support) in the opening post. Next release is focused on our Comic users, with a complete overhaul of the comic parser along with some further enhancements to reading lists and performance.
A few off topic notes:
Published by majora2007 about 3 years ago
OPDS support is here! This has been a hot ask from many users and we have delivered. Admins can now enable OPDS for their server and users can grab their own OPDS url from User Settings. If users are using a client that supports OPDS-PS (page streaming) then their progress will be recorded on Kavita (Currently only chunky for iOS supports this). In addition we support Open Search out of the box, for clients that support searching, you can do full text searching just like on Kavita.
In addition we fixed a rare case where stat collection would take up resources or timeout when our hosting would go down, locking up your system. Even if disabled, the collection code ran (but it wouldn't send it out) and could block the main thread. This has been resolved. If stat collection is disabled, nothing will run and in cases it is enabled, it is all done in a separate thread.
Published by majora2007 about 3 years ago
v0.4.4 is here and is a mixed bag of new features, fixes, and polishing changes. A lot has happened during this release, it's hard to get started.
Up first is Bookmarks, a feature I've been wanting to build out for a few months now. Bookmarks let a user tag pages during reading and later download them for the whole series. You can see how they work on the wiki
Next, we have Custom Covers for Series, Volumes, Chapters, and Collections. Admins can now upload custom cover art for these entities which will lock in place and stick around until they are reset or changed again. See our wiki on how to get started.
Following Custom Covers, it would be really cool if we could actually see the covers for collections when looking at the series in said collection. Well fear not, this update contains just that! We've updated to our first pass of the Collection page redesign which now lets you see the cover art up front and the summary if you've added one. We also expose filters for the collection so you can quickly use the same filters for your library view.
Our last big feature is the ability to check for updates from within the app itself. You can visit the System tab itself to view information about your install and see if there are any updates, or you can view the change log to review all the published stable builds. I know it's not auto updating, but it's the first step getting there.
There are a lot of other changes throughout Kavita, like our completely new download handler, performance improvements in the scanner, or the small polishing stories like auto focusing on username on login page. We hope you enjoy this release.
Going forward, releases will target one big feature and bugfixes or smaller changes. This will allow for us to deliver faster and have to spend less time on testing. Next up, OPDS support!
Published by majora2007 about 3 years ago
v0.4.3 is out and it's action packed. What was supposed to be a small update for the dev team to get our build system in order turned out to deliver some huge wins for Kavita.
First up is the new Webtoon Reader mode for Manga/Comic reading. This mode can be activated by clicking the reader mode in the menu. In webtoon mode, you scroll constantly through the pages. Like always, page progress is tracked and we deploy a custom buffing scheme to make it fast and performant, even on mobile devices. Some options in the reader are not applicable under the webtoon reader, like page splitting or fitting, so they will be disabled.
Next up, mixed media libraries. Have you ever had your Light Novels and your Manga and wanted to have them in the same library? Well now that's possible. Going forward, a library is more just a grouping of media. You can have different media types (like epub and cbz) and they can sit next to each other in the same library. Icons will show next to the series name to help you understand that one is a book and one is an archive file.
And lastly, we have PDF and raw image support. PDF support allows for you to read your PDFs within the manga/comic reader. We tried our hardest to provide a more book-like experience, however, PDF support is pretty limited for these functionalities. Raw image support is another new functionality where you can have loose leaf images that behave just like normal archives. There are some best practices to make the images easy to read, see the following:
└── Manga 2
└── Vol. 1
└── Ch.1 - Ch.3
├── 1.zip
├── 2.zip
└── 3.zip
We also now have a Wiki, which is still a Work in Progress, but has a ton of information to help you with some questions and best practices. If you are interested in helping us build this out, drop us a line in our discord.
There is a ton more to this update, but before we get to it, I want to give a shout out of thanks to those who have donated to us, which are helping us pay for the hosting on our demo, our site, and our stats server. Thank you Allen Sampsell, Aleksey Gring, and H4v3n for your generous donations. The Kavita team appreciates it.
└── Manga 2
└── Vol. 1
└── Ch.1 - Ch.3
├── 1.zip
├── 2.zip
└── 3.zip
Published by majora2007 over 3 years ago
Welcome to v0.4.2! This release we saw 2 new developers join on and help in closing issues and building new features. This release also is home to a complete redesign of the Manga/Comic reader, the ability to download files from the UI, tons of parsing enhancements around specials and book grouping, and more user experience enhancements.
In addition to the action packed change log, we have added a new service to our mix. First, our website is now hosted at kavitareader.com instead of the previous github.io url. We now have KavitaStats, which is our way to collect anonymous install data to help us better understand our users. We collect important information like version of Kavita you run, types of files you use Kavita with, your OS, and your culture. There is no way to tie this data back to the end user. You can opt out under server settings.
We have a demo available! Want to try before you download? Then try out our demo. You can find the link and username/password on our readme.
We are now on Open Collective if you want to sponsor or donate to the project. Open Collective allows for transparent accounting around where your money is going to. Donators will now show on the Readme. We appreciate any support.
Published by majora2007 over 3 years ago
There was a critical database exception that escaped testing and a hotfix had to be issued to fix it.
Please update.
Published by majora2007 over 3 years ago
Collections are here! You can now tag your series with custom tags to group and explore them. A collection is a custom tag that can be applied to any series in Kavita. You can view all collection tags on the home page or by clicking the "Collections" header above the reel on home page. From there you can drill down and view all your collection tags.
If you need to quickly remove a few series from a collection tag, click the actions button on the collection tag and you can quickly use Edit action to modify multiple series at once.
Collections don't have to just be for you. Do you have users? Want to promote a collection to all your users but keep some private to just you? Well you can do that. In that same edit action above, you can Promote a collection to be server-wide. All users can see the items with that collection (assuming they have access to those libraries), while the admin has complete control over what gets marked in it.
Note: There was a critical issue. The assets on this release have been updated.
Published by majora2007 over 3 years ago
Many users have been holding out to switch from Ubooquity until we had proper book support and that day is finally here. Internal testing users have already switched and loved some of the improvements over Ubooquity. In addition, this update brings even more stability to parsing and how we scan your disk. Some parallelization has been removed to reduce high I/O for the sake of speed (this will help any Pi users).
Book support is currently limited to epub files only, mobi, pdf and other file formats are planned for a future release. Books will be parsed out based on both title and volume/chapter information. This allows us to have Light Novels mapped to multiple volumes, but other books, like Stephen King will be parsed out to their original title. Kavita does not enforce a strict folder grouping, you are free to keep all your Stephen King books in one folder, Kavita will map them out to separate entries.
Out of the box, the book reader has a few cool functionalities.
In addition, this update will see a change in how releases are done. Instead of major releases every month or so, I will be splitting up features into minor release (v0.4.1, v0.4.2) with a new feature in each one. This will let me deliver faster and get feedback quicker. Join the discord to be apart of feedback and discussion of new features.
Published by majora2007 over 3 years ago
This update is essentially 2 weeks of bugfixing and battle testing for existing Comics and Manga support. After these 2 weeks, I am positive this release is stable and can hold over anyone until the next release (v0.4 - book support).
Published by majora2007 over 3 years ago
I didn't think I'd release comic book support so soon, but it was easy to add and needed for my testers. You can now add a "Comic" library that will parse your comics and provide the same experience as your Manga.
Change log:
Published by majora2007 over 3 years ago
Due to some issues with paths, Linux users were unable to create a library. This and a few more bugs have been squashed in this release.
Change log:
Published by majora2007 over 3 years ago
This hotfix is for linux/docker users where it was not possible to add a folder to a library due an extra / at beginning of the string.
Published by majora2007 over 3 years ago
There was a major bug in Continue Reading button on the UI that has been fixed in this release. You can safety just copy the wwwroot folder from the release if you don't want to pull everything.
Published by majora2007 over 3 years ago
With this release I can now ditch Ubooquity - my previous manga server of choice - with Kavita for all my reading needs. I would consider this as a full release with manga being it's primary focus over standard comic books. That being said, Kavita has a long road ahead filled with a host of new feature possibilities, like Book support, or proper metadata support.
The change log is as follows (plus many other things I probably forgot):
Published by majora2007 over 3 years ago
This was a fairly large release. This release originally was aimed at stabilizing and testing against a real library. During this, a ton of bugs were found that led to a complete rewrite to the DB structure and Scanning code. This helped Kavita have not only a more flexible structure, but improved matching and large speed ups.
This release delivers the following:
Currently only building for Windows, create an issue if you want other OS builds.
Published by majora2007 almost 4 years ago
First release of Kavita. This release is more of a milestone than a proper release (although you can actually use server). This release allows for:
While a lot was accomplished, a lot of the work is preliminary. This is the foundation for the next releases and polishing efforts.