- C 94.7%
- Python 3.3%
- Shell 1.2%
- Makefile 0.8%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
|
|
||
| fonts | ||
| src | ||
| tests | ||
| vendor | ||
| .gitignore | ||
| chareader.desktop.in | ||
| chareader.svg | ||
| desktop.sh | ||
| Makefile | ||
| README.md | ||
| run.sh | ||
| setup.sh | ||
chareader
A fast, minimal reader for novels and comics on Linux. Opens .epub, .txt and .cbz files.
- Clean reading view with justified text, three themes and adjustable size, spacing and width
- Scroll or book-page view, with a chapter list and saved reading positions
- Auto-scroll (word by word, line by line or smooth) with a reading guide
- Fast reader that shows one word at a time
- Comic view with two-page spreads, right-to-left (manga) order, fit-to-width and zoom
- Library of recent books with cover thumbnails
- Rebindable keys, and custom fonts by dropping a
.ttfor.otfon the window
Written in C with SDL3, OpenGL 3.3 and FreeType.
Install
Install the build tools and libraries:
| Distribution | Packages |
|---|---|
| Void | base-devel pkg-config SDL3-devel freetype-devel libpng-devel libjpeg-turbo-devel libdeflate-devel |
| Arch | base-devel sdl3 freetype2 libpng libjpeg-turbo libdeflate |
| Debian / Ubuntu | build-essential pkg-config libsdl3-dev libfreetype-dev libpng-dev libturbojpeg0-dev libdeflate-dev |
| Fedora | gcc make pkgconf SDL3-devel freetype-devel libpng-devel turbojpeg-devel libdeflate-devel |
Then build and start it:
git clone https://github.com/paddle1407/chareader.git
cd chareader
./setup.sh
./run.sh
To add chareader to your app launcher, run ./desktop.sh --link.
Usage
./run.sh # open the library
./run.sh book.epub # open a book
You can also drop a book onto the window. Press s or click the cog for settings, and ? for the full list of keys.
| Key | Action |
|---|---|
Space / → / PgDn |
Next page (Shift+Space goes back) |
← / PgUp |
Previous page |
↓ ↑ / j k |
Scroll |
n / p |
Next / previous chapter |
c |
Contents |
a |
Auto-scroll on/off |
r |
Fast reader |
= / - |
Bigger / smaller text (zoom in comics) |
t |
Next theme |
f |
Fullscreen |
Esc / q |
Back to the library |
Ctrl+Q |
Quit |
Data
run.sh keeps everything chareader writes inside its own folder, in .data/: settings and reading positions (state.ini), cover thumbnails and imported fonts. To uninstall, delete the folder (and the launcher link, if you made one).
If the window looks wrong on a scaled display, run CHAREADER_DEBUG=1 ./run.sh to print the sizes it sees.
Development
make # build ./chareader
make test # run the tests
Bundled fonts are Noto Serif, Noto Sans (SIL Open Font License) and DejaVu Serif; their licenses are in fonts/. BMP decoding uses stb_image (public domain).