Настройка
Почти всё настраивается в админке. Переменные окружения задают значения по умолчанию; полный список с комментариями — в .env.example (скопируйте в .env).
Основные переменные
Заголовок раздела «Основные переменные»| Переменная | По умолчанию | Описание |
|---|---|---|
PORT |
3000 |
Порт сервера |
LIBRARY_ROOT |
/library |
Папка с книгами по умолчанию |
SESSION_SECURE_COOKIE |
false |
true за HTTPS |
TRUST_PROXY |
false |
Прокси перед сервером: 1 — один nginx / Caddy, loopback или список подсетей |
SMTP_HOST, SMTP_PORT, SMTP_USER, SMTP_PASS, SMTP_FROM |
— | Почта для отправки на читалки (или в админке) |
TELEGRAM_BOT_TOKEN |
— | Токен Telegram-бота (или в админке) |
SCAN_INTERVAL_HOURS |
0 |
Пересканировать источники каждые N часов |
FOLDER_WATCH |
1 |
Следить за папками и индексировать новые файлы |
DOWNLOAD_MAX_CONCURRENT |
4 |
Сколько книг готовится к скачиванию одновременно |
PERF_PROFILE |
авто | embedded для NAS / малой памяти |
CLUSTER_WORKERS |
0 |
Число процессов (0 — один) |
Большие библиотеки и слабое железо
Заголовок раздела «Большие библиотеки и слабое железо»- Индексация и тяжёлые пересчёты идут в фоновых потоках — сервер отвечает и во время импорта.
- На устройствах с ≤ 2 ГБ ОЗУ включается экономный профиль; кэш базы настраивается в Админка → Панель → Обслуживание → Память базы данных.
- Поддерживаются INPX-сборки с архивами PPMd и картинками WebP. Для старых читалок включите Админка → Контент → Книги с картинками WebP (перекодирование в PNG).
- Добавили вторую копию той же коллекции? Админка → Дубликаты → Автоочистка.
- Пересборка индекса или удаление источника не теряют закладки, позиции и полки пользователей.
Как это устроено
Заголовок раздела «Как это устроено»INPX-коллекции, Calibre, папки → индекс SQLite (поиск FTS5, обложки) ├─ веб-интерфейс и читалка ├─ OPDS / KOSync ├─ Android-приложение └─ Telegram-бот и e-mailМетаданные (серии, авторы, жанры) берутся из индекса и отдаются через /api/* — один контракт для веба, OPDS, Telegram и Android.
