I built an e-book reader. Not because the world needed another one, but because I wanted one that could read to me — in Swedish, offline, with a voice that doesn’t sound like a robot from 1998.
🔗 github.com/yeager/folio
What is Folio?
Folio is a GTK4/libadwaita e-book reader for Linux with built-in text-to-speech powered by Piper. It supports EPUB, PDF, MOBI, FB2, and comic book formats (CBZ/CBR).
The key feature: word-level karaoke highlighting during TTS playback. As the voice reads, each word lights up in yellow, and the text auto-scrolls to follow along. It’s like subtitles, but for books.

Features
- All major e-book formats: EPUB, PDF, MOBI, FB2, CBZ/CBR
- Piper TTS integration: Offline, local voice synthesis
- Swedish voices: Alma (available now), Axel (in training)
- English voices: Amy and others via Piper
- Word-level highlighting: Karaoke-style visual tracking
- Auto page-turn: Pages advance as the voice reads
- Chapter navigation: Sidebar with table of contents
- Reading position memory: Picks up where you left off
- Dark theme: Native libadwaita dark mode
- i18n ready: English + Swedish, Transifex integration prepared
Demo
A 22-second demo showing Folio reading the opening of Midsommaren 1983 with the Alma Swedish TTS voice:
The Voice: Alma & Axel
Folio ships with support for Piper’s Swedish voices. Alma (sv_SE-nst-medium) is available today. Axel, a new male Swedish voice currently in training on an RTX 4080, will be available soon.
Both voices run entirely offline — no cloud APIs, no data leaves your machine.
Technical Details
- Language: Python 3 with PyGObject
- UI toolkit: GTK4 + libadwaita
- TTS engine: Piper (VITS/JETS neural TTS)
- Build system: Meson
- Packaging: Flatpak manifest included
- App ID:
se.danielnylander.folio - License: GPL-3.0
Install
git clone https://github.com/yeager/folio.git
cd folio
pip install -r requirements.txt
python run.py
Requires GTK4, libadwaita, and Piper TTS installed.
Folio is part of an ongoing effort to improve Swedish language technology — from hunspell-sv spell checking to Piper voice training to Ubuntu translation quality.

Lämna ett svar