Find a file
Chmouel Boudjnah 4c097949fb
Some checks failed
Build / build (push) Has been cancelled
chore: release v0.17.0
2026-09-15 21:05:54 +02:00
.github fix: Avoid claiming Play upload success 2026-09-06 08:33:25 +02:00
app chore: release v0.17.0 2026-09-15 21:05:54 +02:00
docs fix: read the one animation scale Compose reads 2026-09-15 20:48:46 +02:00
fastlane chore: release v0.17.0 2026-09-15 21:05:54 +02:00
gradle feat: Sync reading changes live 2026-09-05 12:53:53 +02:00
hack fix: Normalize screenshot formatting in generated release notes 2026-09-11 10:09:42 +02:00
tests docs: clean up Markdown prose 2026-09-02 10:36:22 +02:00
tmp
.gitignore chore: Ignore local personal Copilot CLI instructions 2026-09-01 20:32:19 +02:00
.pre-commit-config.yaml fix: Skip Gradle steps when relevant files are not modified 2026-09-04 11:55:39 +02:00
AGENTS.md fix: read the one animation scale Compose reads 2026-09-15 20:48:46 +02:00
build.gradle.kts
CLAUDE.md
DEVELOPER.md fix: ask to reach servers on the home network 2026-09-11 08:31:49 +02:00
gradle.properties perf: Accelerate unit test execution across multiple cores 2026-08-17 21:29:25 +02:00
gradlew chore(deps): bump the gradle group with 12 updates 2026-09-01 19:51:36 +02:00
gradlew.bat chore(deps): bump the gradle group with 12 updates 2026-09-01 19:51:36 +02:00
LICENSE
Makefile fix: keep a turned page turned when the reader leaves mid-flick 2026-09-07 23:54:32 +02:00
README.md Add badges to README for release, downloads, and license 2026-09-15 13:52:32 +02:00
settings.gradle.kts

Liseur

Latest Release Total Downloads License

A woman reading on a couch under a lamp

An open-source ebook reader for Android, and a client for calibre-web, Komga, liseur-sync, Grimmory and any OPDS catalog: EPUBs on your phone, in sync with your own book server.

Library Reading Typography
The shelf, sorted by what you are currently reading. Distraction-free page with notes and bookmarks. Themes, open typefaces, spacing, and brightness.

More screenshots here

About Liseur

Liseur renders EPUBs with the Readium engine, in open typefaces (Literata, Vollkorn, Atkinson Hyperlegible, Inter) or whatever the publisher shipped. Four reading themes: Light, Sepia, Dark, OLED Black. Margins, line spacing, brightness, and page-turn vs. continuous-scroll are adjustable per book or library-wide. Auto-scroll runs at a set pace and continues across chapter boundaries.

A footer shows time remaining in the chapter. Highlights, margin notes, bookmarks, and dictionary lookups are inline; book-level notes live in the notebook. Marking a passage offers three colours, and you tick which of the six you want along with the colour new marks use. Footnotes open as a card over the page rather than sending you to the back of the book.

The library is one shelf whatever the source: local folders, calibre-web, Komga, liseur-sync, Grimmory, or any OPDS catalog. Series are grouped into stacks tracking reading order, progress, and missing volumes. "Download all books" fills the shelf from a connected server in one go.

Reading position syncs across devices through calibre-web, Komga and liseur-sync, down to the exact sentence on the last two. liseur-sync also syncs standalone EPUBs that never came from a catalog. Grimmory keeps your books but not your place in them, so it can be paired with a KOReader sync (kosync) server, which is how positions travel there; any kosync-compatible server works. So can a Custom connection, which is an OPDS address, a kosync address, or one of the two, so a plain catalog and a sync server that know nothing about each other still add up to a library that follows you. What each server can and cannot do is in docs/SERVER_CAPABILITIES.md.

With a recent liseur-sync server, positions and annotations refresh while Liseur is open; statistics refresh when their screen is visible. A remote position never turns the page under you. Returning to the reader offers the further place, and accepting takes the exact position you were shown. Older servers keep the existing scheduled and on-open sync.

No trackers, no analytics, no ads, no subscriptions. Liseur only talks to the servers and dictionary sources you configure. See the privacy policy.

Install

Get it on F-Droid Get it on GitHub Get it on Obtainium

  • liseur-sync: Lightweight self-hosted library and sync server. Watched folders, browse, download, positions and reading stats. This will give you the best "kindle/just work" experience compared to the other sync servers. - liseur-desktop: Desktop version of Liseur (abandoned).

Development

See DEVELOPER.md for build instructions and architecture notes, and docs/SERVER_CAPABILITIES.md for what each server exposes, what Liseur implements against it, and why the gaps remain.

What's in a name?

Liseur ([li.zœʁ], lee-ZUR) is the French word for an avid reader or book lover. It sounds dignified, like the English word leisure.

Another inspiration was a painting by Pierre-Auguste Renoir portraying Claude Monet as "Le Liseur":

image

Author

Sponsor

Chmouel Boudjnah

Licence

MIT. Bundled fonts are under the SIL Open Font License.