Kavita собирает библиотеку комиксов, но полноценной читалкой не становится
Библиотека комиксов и книг обычно живёт в состоянии «где-то на диске, в двадцати вложенных папках, часть на телефоне, часть забыта в старом бэкапе». Kavita решает ровно эту проблему: указываете папку с файлами — получаете каталог с обложками, метаданными и чтением прямо в браузере с любого устройства. Но здесь легко обмануться: Kavita — это сервер-библиотека, а не замена специализированной читалке, и часть возможностей, к которым вы привыкли в Kindle-приложении, KOReader или Apple Books, в ней либо отсутствует, либо работает заметно скромнее. Разберём честно, что Kavita делает как надо, а что стоит закрывать другим инструментом.
Содержание
- Что такое Kavita и в чём её реальная сила
- Комиксы и манга — тут Kavita действительно на своём поле
- Электронные книги: где заканчивается сходство с полноценной читалкой
- Заметки и подсветки: то, чего в Kavita практически нет
- Офлайн-чтение и мобильный доступ: главное архитектурное ограничение
- Установка Kavita на VPS и организация библиотеки
- Как совместить Kavita с полноценной читалкой — рабочая схема
Что такое Kavita и в чём её реальная сила
Kavita — open-source сервер для домашней библиотеки комиксов, манги и электронных книг. Разворачивается на своём железе (в том числе на VPS через Docker), сканирует указанные папки с файлами CBZ, CBR, CB7, CBT, EPUB и PDF, вытаскивает обложки и метаданные, и отдаёт всё это через веб-интерфейс: заходите с телефона, планшета, ноутбука или любого устройства с браузером — без установки отдельного приложения и без синхронизации через кабель.
Сильная сторона — именно управление коллекцией, а не просто раздача файлов:
- Автоматическое сканирование библиотеки — Kavita сама распознаёт структуру папок как серии и тома, подтягивает обложки из архивов и метаданные из
ComicInfo.xml, если он есть в комиксах. - Коллекции и списки чтения — можно группировать серии по вселенным, авторам, издательствам, собирать кроссоверы в отдельный ридинг-лист вне зависимости от того, как файлы физически разложены по папкам.
- Многопользовательский доступ с разграничением прав — семейный аккаунт с возрастными ограничениями для детей, отдельные библиотеки для разных пользователей, родительский контроль по рейтингу контента.
- OPDS-каталог — та же библиотека доступна как OPDS-фид для сторонних читалок вроде KOReader или Moon+ Reader, если браузерный ридер вам не по вкусу.
- Прогресс чтения хранится на сервере — открыли комикс на телефоне, дочитали на планшете с той же страницы: раз чтение идёт через веб-интерфейс одного сервера, а не через локальный файл на устройстве, синхронизация позиции здесь получается «бесплатно», без отдельной настройки.
Для домашней коллекции в несколько тысяч файлов Kavita — один из самых предсказуемых self-hosted вариантов: лёгкая по ресурсам, активно развивается, не требует привязки к чужому облаку. Но именно потому, что она удобная и всё «просто работает» через браузер, легко поймать себя на мысли завести её вместо остальных приложений для чтения — и вот тут начинаются реальные ограничения.
Комиксы и манга — тут Kavita действительно на своём поле
Для графического контента Kavita спроектирована близко к идеалу для сервера-библиотеки. Движок чтения комиксов умеет постраничный и непрерывный режимы прокрутки, разворот на два листа, зеркальный порядок страниц для манги (справа налево), автоматическую подгонку по ширине или высоте экрана. Для CBZ/CBR/CB7 это закрывает практически весь набор того, что обычно нужно от читалки комиксов — включая заметный по объёму манга-каталог, где чтение справа налево и правильные развороты важны сами по себе, а не как опция для галочки.
Здесь Kavita конкурирует скорее не с десктопными читалками, а с другими серверными решениями того же назначения — Komga, Ubooquity и подобными. Разница между ними обычно в деталях интерфейса и удобстве метаданных, а не в принципиальных возможностях. Принцип тот же, что и у любой self-hosted медиатеки для видео или музыки: «свой сервер вместо чужого облака», просто применительно к комиксам, а не к фильмам.
Единственная слабина в этой части — распознавание нестандартной структуры архивов. Если страницы внутри CBZ разложены без единой системы именования (вперемешку JPG и PNG, номера без ведущих нулей типа 1.jpg, 2.jpg, ..., 10.jpg, из-за чего сортировка съезжает), Kavita отобразит их в неправильном порядке. Решается заранее — пересобрать архив с нормальной нумерацией (001.jpg, 002.jpg) до загрузки в библиотеку, а не после того, как обнаружили проблему в интерфейсе.
Нужен сервер под эту задачу?
Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США, Франция и РФ. Оплата картой РФ и по СБП.
Арендовать VPS под KavitaЭлектронные книги: где заканчивается сходство с полноценной читалкой
Для EPUB и PDF Kavita использует тот же браузерный движок чтения, что и для комиксов — и здесь разрыв с десктопными/мобильными читалками ощущается сильнее всего. У Kavita есть базовая настройка размера шрифта, интервала между строками, отступов и тёмной темы — этого достаточно для чтения от случая к случаю. Но по сравнению с тем, что предлагают специализированные приложения для книг, набор скромный:
| Возможность | Kavita | Специализированная читалка (Apple Books, Kindle-приложение, KOReader) |
|---|---|---|
| Выбор шрифта | Ограниченный список | Полная кастомизация, подключение своих шрифтов |
| Перенос слов и выключка текста | Базовая | Точная настройка переносов, justify-текст с контролем |
| Постраничная анимация/эффекты | Отсутствует | Часто есть (эффект перелистывания) |
| Text-to-speech (озвучка книги) | Нет | Часто встроено или через системный accessibility-движок |
| Настройка полей и колонок | Минимальная | Гибкая, вплоть до двух колонок на планшете |
| Word lookup / встроенный словарь | Нет | Обычно есть (тап по слову — определение) |
Дело не в том, что разработчики Kavita что-то недоделали — движок изначально не задумывался как замена полноценной типографике книжной читалки, у проекта другой фокус: единая библиотека для разных форматов, доступная из браузера без установки. Если чтение текстовых книг для вас важнее, чем каталогизация комиксов, вероятно удобнее держать книги в специализированном инструменте вроде Calibre-Web — там тоже нет продвинутой типографики уровня Kindle, зато есть конвертация форматов и более зрелая работа именно с текстовыми книгами. Как поднять его на VPS, разобрано в статье как установить и настроить Calibre-Web на VPS.
Заметки и подсветки: то, чего в Kavita практически нет
Здесь разрыв с полноценными читалками самый заметный. У Kindle-приложения, Apple Books, Readwise-экосистемы или KOReader заметки и подсветки — это отдельный полноценный слой: выделили фрагмент, добавили комментарий, всё это синхронизируется между устройствами, экспортируется, ищется по тексту, попадает в сторонние сервисы для повторения прочитанного.
В Kavita ничего сопоставимого нет. Есть закладки на конкретную страницу/позицию и отметка «прочитано/не прочитано» по тому, докуда вы дочитали — этого достаточно, чтобы вернуться к нужному месту, но недостаточно, чтобы вести полноценную работу с текстом: выписывать цитаты, оставлять комментарии на полях, потом собирать всё это в один список для конспекта или заметок в Obsidian/Notion.
Если работа с заметками для вас принципиальна (например, читаете нон-фикшн и делаете конспекты), практичнее не бороться с Kavita, а признать разделение задач: Kavita — каталог и точка доступа к файлам, а собственно чтение с подсветками ведите в приложении, которое умеет их синхронизировать и экспортировать. Технически это не проблема — открываете файл через OPDS в такой читалке, она скачивает EPUB локально, а дальше все заметки живут уже в её собственной базе, а не в Kavita.
Офлайн-чтение и мобильный доступ: главное архитектурное ограничение
Kavita — веб-приложение с сервером в основе. Чтобы читать, устройству нужна сеть до вашего сервера — постоянно, а не единожды для скачивания файла. Это принципиально отличается от Kindle или Moon+ Reader, где книга один раз скачивается на устройство и дальше читается сколько угодно без связи: в метро, в самолёте, на даче без интернета.
У Kavita есть частичные обходы, но каждый со своим компромиссом:
- PWA (Progressive Web App) — Kavita можно «установить» как веб-приложение на телефон, оно получает иконку на рабочем столе и запускается в отдельном окне без адресной строки браузера. Но это по-прежнему обёртка над тем же сетевым клиентом — офлайн-кеша страниц там нет, без связи с сервером приложение просто не откроет книгу.
- OPDS-клиенты с локальным кешем — некоторые сторонние читалки, подключённые к Kavita по OPDS, при открытии книги скачивают её файл целиком на устройство. Дальше читаете офлайн, но прогресс чтения в такой книге уже не синхронизируется обратно в Kavita автоматически — это отдельная локальная копия, а не «то же самое чтение продолжается на другом устройстве».
- Постоянный доступ к серверу через туннель или VPN — если сервер держите дома или на VPS без публичного домена, самый практичный вариант закрыть вопрос «читать откуда угодно» — не имитировать офлайн, а сделать доступ к серверу стабильным и безопасным отовсюду. Здесь подходит Cloudflare Tunnel на VPS — не нужно открывать порты и возиться с проброской, сервис публикуется через защищённый туннель наружу без статического IP на клиенте.
Честная рекомендация — не пытаться превратить Kavita в офлайн-читалку искусственно. Если поездки без связи (перелёты, метро без покрытия) для вас регулярная история, держите отдельное приложение с реальным офлайн-режимом для конкретных книг «в разработке», а Kavita используйте как основной каталог и источник для всего остального.
Установка Kavita на VPS и организация библиотеки
Разворачивается Kavita типовым для self-hosted проектов способом — через Docker Compose. На Ubuntu 24.04 подготовка сервера:
apt update && apt upgrade -y
apt install -y docker.io docker-compose-plugin
systemctl enable --now docker
Каталог проекта и файл docker-compose.yml:
mkdir -p /opt/kavita/{config,manga,books}
cd /opt/kavita
services:
kavita:
image: lscr.io/linuxserver/kavita:latest
container_name: kavita
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Moscow
volumes:
- ./config:/config
- ./manga:/manga
- ./books:/books
ports:
- "127.0.0.1:5000:5000"
restart: unless-stopped
Порт сознательно смотрит только на 127.0.0.1 — наружу сервис не публикуется напрямую, доступ снаружи закрывается позже реверс-прокси с HTTPS.
Запуск и первичная проверка:
docker compose up -d
docker compose logs -f kavita
При первом заходе по адресу http://127.0.0.1:5000 (через SSH-туннель, если сервер удалённый) Kavita попросит создать администратора. Дальше в веб-интерфейсе добавляете библиотеки, указывая пути /manga и /books как источники — сканирование запускается сразу и повторяется по расписанию, которое настраивается в параметрах сервера.
Ресурсы для VPS: Kavita — не самое тяжёлое приложение, для библиотеки в несколько тысяч файлов достаточно 1–2 vCPU и 2 ГБ RAM. Основная нагрузка приходится не на процессор, а на диск — под сами файлы комиксов и книг место закладывайте с ощутимым запасом, особенно если храните высококачественные сканы.
Для публикации наружу с шифрованием — Nginx с Let's Encrypt перед контейнером, аналогично тому, как это делается для других self-hosted сервисов; конкретные шаги разобраны в статье Let's Encrypt SSL на VPS. Бэкап сводится к архивированию каталогов ./config, ./manga и ./books — регулярный автоматический бэкап тома лучше настроить сразу, не дожидаясь первого сбоя диска.
Как совместить Kavita с полноценной читалкой — рабочая схема
Реалистичная конфигурация — не выбирать между Kavita и специализированной читалкой, а развести им зоны ответственности:
- Kavita — единая точка хранения и каталог. Все файлы лежат в одном месте на сервере, с метаданными, обложками, коллекциями и списками чтения. Это решает исходную боль — «где вообще все мои книги и комиксы».
- Комиксы и мангу читаете прямо в Kavita. Для этого типа контента браузерный ридер — уже достаточно хорошее решение, дополнительное приложение почти не нужно.
- Текстовые книги, которые читаете вдумчиво (нон-фикшн, конспектирование), открываете через OPDS в отдельной читалке — KOReader на E-ink-ридере, Moon+ Reader на Android, любое приложение с нормальной типографикой и заметками. Подключение OPDS-каталога Kavita выглядит как обычный сетевой книжный магазин в настройках такого приложения.
- Долгий офлайн (перелёты, поездки) — заранее скачанные файлы, а не расчёт на то, что Kavita будет доступна без сети. OPDS-клиент с локальным кешем или ручная выгрузка нужных файлов на устройство закрывают это за пять минут до поездки.
Такая схема требует немного больше дисциплины, чем «поставил одно приложение и забыл», но честнее отражает реальность: Kavita отлично решает задачу каталогизации и доступа с любого устройства, а специализированная читалка — задачу комфортного чтения текста с заметками и офлайн-доступом. Пытаться закрыть обе задачи одним инструментом означает получить компромисс в каждой из них.
Нужен сервер под эту задачу?
Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США, Франция и РФ. Оплата картой РФ и по СБП.
Арендовать VPS под KavitaНужны сами нейросети для контента?
Генерируйте изображения, видео и озвучку нейросетями на falapi.io — десятки моделей в одном окне. Оплата картой РФ и по СБП.
Частые вопросы
Kavita работает офлайн вообще без интернета?
Нет, это серверное веб-приложение — устройству нужна сеть до сервера каждый раз при чтении. Частичный обход — OPDS-клиент, который скачивает файл на устройство целиком, но тогда прогресс чтения этой книги перестаёт синхронизироваться обратно в Kavita.
Есть ли в Kavita заметки и подсветки текста, как в Kindle?
Полноценных заметок и подсветок с синхронизацией и экспортом нет. Есть закладки на позицию чтения и отметка прогресса — для навигации достаточно, для конспектирования нет.
Стоит ли ставить Kavita вместо Calibre-Web?
Зависит от того, что у вас в библиотеке. Если это в основном комиксы и манга — Kavita объективно сильнее. Если в основном текстовые книги и важна конвертация форматов — присмотритесь к Calibre-Web, у неё другой фокус.
Можно ли открыть библиотеку Kavita наружу без VPN?
Да, через реверс-прокси с HTTPS-сертификатом или через Cloudflare Tunnel — оба варианта закрывают трафик шифрованием без необходимости пробрасывать порты вручную.
Сколько ресурсов VPS нужно под Kavita?
Для библиотеки в несколько тысяч файлов обычно достаточно 1–2 vCPU и 2 ГБ RAM. Диск — основной ресурс, который стоит закладывать с запасом под сами файлы.
Kavita умеет распознавать мангу и переворачивать страницы справа налево?
Да, это штатный режим чтения для манги, настраивается на уровне серии или библиотеки.
Обсудить статью, задать вопрос или начать новую тему
Есть вопрос по этой статье, идея для обсуждения или просто хотите поделиться опытом? Сообщество MAATRIX ждёт. Для общения, пожалуйста, зарегистрируйтесь в нашем личном кабинете.
Перейти в сообщество →