Foliate icon

Foliate

A simple and modern eBook viewer

Download on Flathub

Source · Releases · Issues

Features

View .epub, .mobi, .azw, and .azw3 files. Foliate is based on Epub.js, and supports both two-page view and scrolled view. Customize font and line-spacing. Choose between light, sepia, dark, and invert mode, or add your own custom themes

Easy navigation. View the table of contents, or use the find in book feature. Reading progress slider with chapter marks makes it easy to find your way through the book. Hover over the slider to see reading time left estimates.

Screenshot
Screenshot

Quick dictionary lookup. Foliate uses metadata included in the eBook to determine which language to lookup. This feature is powered by Wiktionary, the free dictionary. Folate also supports Wikipedia lookup and Google Translate, as well as offline dictionaries via dictd.

Screenshot

Add bookmarks, highlights, and notes. Foliate stores your reading progress, bookmarks, and annotations in your XDG data directory as plain JSON files, so you can export or sync them easily.


More Screenshots

Find

Find in book

Dark

Dark mode

About

Book metadata

Sidebar

Alternative sidebar UI


Installation

Flatpak

Download on Flathub

Distribution packages

  • Arch Linux (AUR): foliate, foliate-git
  • Fedora: sudo dnf install foliate
  • Void Linux: xbps-install -S foliate

Debian/Ubuntu packages can be downloaded from the releases page.

Note: to enable auto-hyphenation, you will need to install the hyphenation rules, e.g., hyphen-en for English, hyphen-fr for French, etc.; to use offline dictionaries, install dictd. For text-to-speech support, install espeak-ng, or festival.

Manual Installation from Source

  1. Clone the source code from GitHub or download one of the releases.
  2. Make sure you have these dependencies installed:
    • gjs >= 1.52
    • webkit2gtk
    • meson >= 0.40 (required for building)
    • gettext (required for building)
  3. To install, run these commands:
    meson build --prefix=/usr
    cd build
    ninja
    sudo ninja install
    
  4. To uninstall, run sudo ninja uninstall

Questions and Answers

Reading progress slider not showing up?

In order to display the slider, Epub.js must generate locations for the entire book. For books with lots of pages, this could take a while. In the meantime, you can still read the book and use all other functionalities normally.

Once the locations are generated, the info is cached and should load instantly next time you open the book.

How are notes and bookmarks stored?

Your reading progress, bookmarks, and annotations are saved in

~/.local/share/com.github.johnfactotum.Foliate
If you're using the flatpak version, they should be in
~/.var/app/com.github.johnfactotum.Foliate/data/com.github.johnfactotum.Foliate

The data for each book is stored in a JSON file named after the book's identifier. If you'd like to sync or backup your progress and notes, simply copy these files and everything should just work™.