A simple and modern GTK eBook viewer, built with GJS and Epub.js.
Website: https://johnfactotum.github.io/foliate/
Documentation: https://github.com/johnfactotum/foliate/wiki
- View .epub, .mobi, .azw, and .azw3 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
- Basic text-to-speech support with eSpeak NG and Festival
Distro | Package Name/Link |
---|---|
Arch Linux | foliate |
Fedora | foliate |
Manjaro | foliate |
Ubuntu | foliate |
Void Linux | foliate |
Debian packages can be downloaded from the releases page.
For Mobipocket (.mobi) and Kindle File Format (.azw, .azw3) support, you would need Python (2.7 or >= 3.4).
Auto-hyphenation is done using CSS hyphenation. To enable 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
.
For text-to-speech support, install espeak-ng
, or festival
, and packages for the individual voices.
To enable spellchecking for notes, gspell
is requried.
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 -us -uc -nc
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
Foliate is available on the Snap Store.
You can test out the latest code in this repository using the edge
channel of the snap. Run snap install --edge foliate
to install the latest build from master. (snap refresh --edge foliate
if you already have the snap installed)
You can build the snap manually using snapcraft. Install snapcraft and run snapcraft
in the root of this repository.
Primary menu:
Navigation:
Lookup:
Annotations:
Skeuomorphic mode:
Dark mode:
Book metadata display:
Alternative sidebar UI:
Note: two JavaScript libraries are bundled in this software:
- Epub.js, which is licensed under FreeBSD. The included file is patched to fix #76 and #177
- The minified version of JSZip, which is dual-licensed. You may use it under the MIT license or the GPLv3 license. See LICENSE.markdown
This software also includes parts from KindleUnpack, which is liscensed under GPL-3.0.