A simple and modern GTK eBook viewer, built with GJS and Epub.js.
Website: https://johnfactotum.github.io/foliate/
- View EPUB files in two-page view or scrolled view
- Customize font, line-spacing, margins, and brightness
- Light, sepia, dark, and invert mode, or add your own custom themes
- Reading progress slider with chapter marks
- Bookmarks and annotations
- Find in book
- Quick dictionary lookup with Wiktionary, Wikipedia, and
dictd
, or translate text with Google Translate - Touchpad gestures—use two-finger swipe to turn the page
- Arch Linux (AUR):
foliate
,foliate-git
- Fedora:
sudo dnf install foliate
- Void Linux:
xbps-install -S foliate
Auto-hyphenation is done using CSS hyphenation. To enbale CSS hyphenation in WebKitGTK, you will need to install the hyphenation rules, e.g., hyphen-en
for English, hyphen-fr
for French, etc.
For offline dictionary support, install dictd
.
The following dependencies are required for building:
meson (>= 0.40)
gettext
The following are runtime requirements:
gjs (>= 1.52)
webkit2gtk
To install, run the following commands:
meson build --prefix=/usr
ninja -C build
sudo ninja -C build install
To uninstall, run
sudo ninja -C build uninstall
The following commands will build Foliate and install it inside a directory:
meson build --prefix=$PWD/run
ninja -C build
ninja -C build install
To run the application, you'll need to set the schema directory for GSettings:
GSETTINGS_SCHEMA_DIR=$PWD/run/share/glib-2.0/schemas ./run/bin/com.github.johnfactotum.Foliate
sudo apt install build-essential debhelper meson gettext
dpkg-buildpackage
Foliate is available on Flathub.
Open Gnome Builder, choose "Clone Repository…", and follow the instructions. After cloning the project, hit Ctrl+F5 to build and run Foliate.
flatpak-builder --force-clean --install --user build com.github.johnfactotum.Foliate.json
Dictionary:
Annotations:
Find in book:
Dark mode:
Book metadata display:
Optional sidebar layout, with popup footnote:
Note: three JavaScript libraries are bundled in this software:
- Epub.js, which is licensed under FreeBSD. The included file is patched to fix #76 and futurepress/epub.js#942
- The minified version of JSZip, which is dual-licensed. You may use it under the MIT license or the GPLv3 license. See LICENSE.markdown
- A browserified version of Cheerio, which is licensed under MIT. The browserified version is produced by
npm install -g browserify
echo "window.cheerio = require('cheerio')" > index.js
browserify index.js > cheerio.js