Браузерная онлайн-читалка книг.
Выглядит соледующим образом: OmniReader
При запуске приложения, по умолчанию веб-сервер доступен по адресу http://127.0.0.1:44080
Для указания местоположения рабочей директории, воспользуйтесь параметрами командной строки. Дополнительные параметры сервера настраиваются в конфигурационном файле.
- загрузка любой страницы интернета
- синхронизация данных (настроек и читаемых книг) между различными устройствами
- работа в автономном режиме (без связи)
- изменение цвета фона, текста, размер и тип шрифта и прочее
- установка и запоминание текущей позиции и настроек в браузере и на сервере
- кэширование файлов книг на клиенте и на сервере
- открытие книг с локального диска
- плавный скроллинг текста
- анимация перелистывания
- поиск по тексту и копирование фрагмента
- запоминание недавних книг, скачивание книги из читалки в формате fb2
- управление кликом и с клавиатуры
- регистрация не требуется
- поддерживаемые браузеры: Google Chrome, Mozilla Firefox последних версий
- релизы сервера под Linux, MacOS и Windows
Приложение представляет собой полноценный веб-сервер в виде единого исполнимого файла.
При первом запуске, будет создана рабочая директория .liberama
(по умолчанию - в той же папке, где исполнимый файл),
в которой хранится конфигурационный файл config.json
, файлы веб-приложения, файлы базы данных, журналы и прочее.
Изменить рабочую директорию можно с помощью cli-параметра --app-dir
По умолчанию веб-интерфейс будет доступен по адресу http://127.0.0.1:44080
Запустите liberama --help
, чтобы увидеть список опций:
Usage: liberama [options]
Options:
--help Показать опции командной строки
--app-dir=<dirpath> Задать рабочую директорию, по умолчанию: <execDir>/.liberama
--auto-repair Починить БД приложения при запуске, если она повреждена
При первом запуске в рабочей директории будет создан конфигурационный файл config.json
:
{
// Максимальный размер файла загружаемой книги (в байтах)
"maxUploadFileSize": 52428800,
// Максимальный размер каталога <appDir>/public-files/tmp для хранения конвертированных
// файлов книг пользователей (в байтах)
"maxTempPublicDirSize": 536870912,
// Максимальный размер каталога <appDir>/public-files/upload для хранения
// загруженных в /upload (кнопка "Загрузить файл с диска") файлов книг пользователей (в байтах)
"maxUploadPublicDirSize": 209715200,
// Использование внешних конвертеров (только в среде Linux)
// Без них читалка может работать только с файлами формата fb2, txt, html, xml
// Инструкции установки внешних конвертеров см. в docs/omnireader.ru/README.md
"useExternalBookConverter": false,
// Настройки для списка серверов.
// Приложение может запускать одновременно несколько веб-серверов на разных портах
"servers": [
{
// Произвольное название сервера
"serverName": "1",
// Режим работы сервера:
// "reader" - обычная читалка
// "omnireader" - модификации для сайта omnireader.ru
// "liberama" - модификации для сайта liberama.top
// "book_update_checker" - сервер обновлений
"mode": "reader",
// Хост, порт сервера
"ip": "0.0.0.0",
"port": "44080"
}
],
// Настройки удаленного хранилища
"remoteStorage": false,
// Для веб-приложения: включение/выключение работы с сервером обновлений
"bucEnabled": false,
// Подключение себя, как клиента, к серверу обновлений
"bucServer": false
// Сcылка для открытия в новом окне брауpера по клику на кнопку "Сетевая библиотека"
// Если не задано, открывается внутренний менеджер библиотек с использванием фрейма
"networkLibraryLink": "http://samlib.ru/"
}
При необходимости, можно настроить нужный параметр в этом файле вручную.
Для разворачивания читалки на чистом VPS с нуля смотрите docs/omnireader.ru
Сборка только в среде Linux. Необходима версия node.js не ниже 16.
Для сборки linux-arm64 необходимо предварительно установить QEMU.
git clone https://github.com/bookpauk/liberama
cd liberama
npm i
npm run release
Результат сборки будет доступен в каталоге dist/release
npm run dev
Связаться с автором проекта: bookpauk@gmail.com