
* Removed some extra spam for the console * Implemented the code to update RowVersion, which is our concurrency check * Fixed a critical issue where more than one bookmark could occur for a given chapter due to a race condition. Now we use concurrency checks and we also gracefully allow more than one row, by only grabbing first. * Cleaned up the logic for IHasConcurencyToken and updated the setters to be private. * Lots of comments and when deleting a library, remove any user progress items for which chapters don't exist. * When deleting a Series, cleanup user progress rows. * Now after a scan of library, if a series is removed, collection tags are pruned as well if there are no longer any series bound to it. * Updated the image on the Readme to show a better picture * Small code cleanup to remove null check modifier as I check for null just before then * Fixed images loading multiple times due to using function in binding with random. You can now click chapter images to read that chapter specifically. * Fixed cards being different sizes when read vs unread * Moved over Robbie's workflow changes from notifier. Commented out activity indicators as that is not shipping with this release. * Remove code that isn't needed * Reverted GA * Changed GA to trigger only when HEAD is updated
125 lines
6.1 KiB
Markdown
125 lines
6.1 KiB
Markdown
# [<img src="/Logo/kavita.svg" width="32" alt="">]() Kavita
|
|
<div align="center">
|
|
|
|
!
|
|
|
|
Kavita is a fast, feature rich, cross platform reading server. Built with a focus for manga,
|
|
and 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!
|
|
|
|
[](https://github.com/Kareadita/Kavita/releases)
|
|
[](https://github.com/Kareadita/Kavita/blob/master/LICENSE)
|
|
[](https://github.com/Kareadita/Kavita/releases)
|
|
[](https://hub.docker.com/r/kizaing/kavita/)
|
|
[](https://sonarcloud.io/dashboard?id=Kareadita_Kavita)
|
|
[](https://sonarcloud.io/dashboard?id=Kareadita_Kavita)
|
|
[](#backers)
|
|
[](#sponsors)
|
|
</div>
|
|
|
|
## Goals
|
|
- [x] Serve up Manga/Webtoons/Comics (cbr, cbz, zip/rar, 7zip, raw images) and Books (epub, pdf)
|
|
- [x] First class responsive readers that work great on any device (phone, tablet, desktop)
|
|
- [x] Dark and Light themes
|
|
- [ ] Provide hooks into metadata providers to fetch metadata for Comics, Manga, and Books
|
|
- [ ] Metadata should allow for collections, want to read integration from 3rd party services, genres.
|
|
- [x] Ability to manage users, access, and ratings
|
|
- [ ] Ability to sync ratings and reviews to external services
|
|
- [x] Fully Accessible with active accessibility audits
|
|
- [x] Dedicated webtoon reading mode
|
|
- [ ] And so much [more...](https://github.com/Kareadita/Kavita/projects)
|
|
|
|
## Support
|
|
[](https://www.reddit.com/r/KavitaManga/)
|
|
[](https://discord.gg/eczRp9eeem)
|
|
[](https://github.com/Kareadita/Kavita/issues)
|
|
|
|
## Demo
|
|
If you want to try out Kavita, we have a demo up:
|
|
[https://demo.kavitareader.com/](https://demo.kavitareader.com/)
|
|
```
|
|
Username: demouser
|
|
Password: Demouser64
|
|
```
|
|
|
|
## Setup
|
|
### Non-Docker
|
|
- Unzip the archive for your target OS
|
|
- Place in a directory that is writable. If on windows, do not place in Program Files
|
|
- Linux users must ensure the directory & kavita.db is writable by Kavita (might require starting server once)
|
|
- Run Kavita
|
|
- If you are updating, do not copy appsettings.json from the new version over. It will override your TokenKey and you will have to reauthenticate on your devices.
|
|
|
|
### Docker
|
|
Running your Kavita server in docker is super easy! Barely an inconvenience. You can run it with this command:
|
|
|
|
```
|
|
docker run --name kavita -p 5000:5000 \
|
|
-v /your/manga/directory:/manga \
|
|
-v /kavita/data/directory:/kavita/data \
|
|
--restart unless-stopped \
|
|
-d kizaing/kavita:latest
|
|
```
|
|
|
|
You can also run it via the docker-compose file:
|
|
|
|
```
|
|
version: '3.9'
|
|
services:
|
|
kavita:
|
|
image: kizaing/kavita:latest
|
|
volumes:
|
|
- ./manga:/manga
|
|
- ./data:/kavita/data
|
|
ports:
|
|
- "5000:5000"
|
|
restart: unless-stopped
|
|
```
|
|
|
|
**Note: Kavita is under heavy development and is being updated all the time, so the tag for current builds is `:nightly`. The `:latest` tag will be the latest stable release. There is also the `:alpine` tag if you want a smaller image, but it is only available for x64 systems.**
|
|
|
|
## Feature Requests
|
|
Got a great idea? Throw it up on the FeatHub or vote on another idea. Please check the [Project Board](https://github.com/Kareadita/Kavita/projects) first for a list of planned features.
|
|
|
|
[](https://feathub.com/Kareadita/Kavita)
|
|
|
|
|
|
## Contributors
|
|
|
|
This project exists thanks to all the people who contribute. [Contribute](CONTRIBUTING.md).
|
|
<a href="https://github.com/Kareadita/Kavita/graphs/contributors"><img src="https://opencollective.com/kavita/contributors.svg?width=890&button=false" /></a>
|
|
|
|
|
|
## Donate
|
|
If you like Kavita, have gotten good use out of it or feel like you want to say thanks with a few bucks, feel free to donate. Money will go towards
|
|
expenses related to Kavita. Back us through [OpenCollective](https://opencollective.com/Kavita#backer). You can also use [Paypal](https://www.paypal.com/paypalme/majora2007?locale.x=en_US), however your name will not show below.
|
|
|
|
## Backers
|
|
|
|
Thank you to all our backers! 🙏 [Become a backer](https://opencollective.com/Kavita#backer)
|
|
|
|
<img src="https://opencollective.com/Kavita/backers.svg?width=890"></a>
|
|
|
|
## Sponsors
|
|
|
|
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor](https://opencollective.com/Kavita#sponsor)
|
|
|
|
<img src="https://opencollective.com/Kavita/sponsors.svg?width=890"></a>
|
|
|
|
## Mega Sponsors
|
|
<img src="https://opencollective.com/Kavita/tiers/mega-sponsor.svg?width=890"></a>
|
|
|
|
## JetBrains
|
|
Thank you to [<img src="/Logo/jetbrains.svg" alt="" width="32"> JetBrains](http://www.jetbrains.com/) for providing us with free licenses to their great tools.
|
|
|
|
* [<img src="/Logo/rider.svg" alt="" width="32"> Rider](http://www.jetbrains.com/rider/)
|
|
* [<img src="/Logo/dottrace.svg" alt="" width="32"> dotTrace](http://www.jetbrains.com/dottrace/)
|
|
|
|
## Sentry
|
|
Thank you to [<img src="/Logo/sentry.svg" alt="" width="64">](https://sentry.io/welcome/) for providing us with free license to their software.
|
|
|
|
### License
|
|
|
|
* [GNU GPL v3](http://www.gnu.org/licenses/gpl.html)
|
|
* Copyright 2020-2021
|
|
|