Volumen [voˈlu.men]

Fast, free and open book reader with shareable comments

Volumen is a lightweight cross-platform e-reader built for EPUB, Word and Markdown files. Import your library, export your notes, share a manuscript with reviewers and get their comments back, or embed it on your own website. It’s up to you.

Book II

For we are made for cooperation, like feet, like hands, like eyelids, like the rows of the upper and lower teeth. To act against one another then is contrary to nature; and it is acting against one another to be vexed and to turn away.

TomasNever thought about teeth this way

Whatever this is that I am, it is a little flesh and breath, and the ruling part. Throw away thy books; no longer distract thyself: it is not allowed; but as if thou wast now dying, despise the flesh; it is blood and bones and a network, a contexture of nerves, veins, and arteries.

AnnWas the Oxford comma in the original Greek?

InesI stopped reading here

Meditations, Book II, with notes from three readers, as the writer sees them on a shared manuscript.

Reading

Typesetting

Words are shaped with the book’s own typefaces by HarfRust, the Rust port of HarfBuzz, and each paragraph is broken as a whole, with hyphenation patterns for its language. Every column is then measured in the browser and corrected, so no line runs past the margin.

Importing

EPUB 2 and 3 with their publishers’ CSS, tables, SVG and MathML; Word with its styles, footnotes and tracked changes; Markdown. Original files are kept, so a book is read again when an importer improves.

Notes

A note is anchored by its words and the text around them, not by a position, so it finds its place again in a revised draft. Notes export as Markdown, JSON or W3C Web Annotations.

Speed

The engine runs in a worker and keeps its layouts: turning never waits on it, a book read before opens in a fraction of a second, and one search covers the full text of every book.

Sharing a manuscript

A preview: sharing is by invitation for now, with limits on size and use while it settles.

  1. Sealing

    The book is encrypted with AES-256-GCM on the writer’s device. Its key lives in the link’s fragment, which browsers never send to a server; separate keys for the book, the notes and the right to post are derived from it with HKDF.

  2. Reading

    Readers need no account. One Turnstile check, then a pass for that book: their notes go back sealed with the same link, a few kilobytes at a time, when they leave the book.

  3. Returning

    Writers sign in with passkeys. Notes are placed on the writer’s copy by their words, each reader in a colour of their own; the list of shares is sealed with a key the passkey derives (WebAuthn PRF), so it opens on the writer’s other devices and nowhere else.

For developers

The source is on GitHub, under the MIT licence.

Static files

The reader is a page, a WebAssembly engine of about 850 KB compressed, and its fonts. It runs from any web server or CDN, with no backend, and offline after the first visit.

The engine

Rust crates that read EPUB, Word and Markdown into one document model, set it in columns, and place notes on revised text. They build for WebAssembly and natively; the desktop app uses them directly.

The sharing service

It holds only sealed bytes: books and notes it cannot read. The service can be run on your own account from the repository.

Embedding

A book on your own page, read in place: a free sample on a blog, a set text on a course page. The file stays on your site, which must let other sites read it (Access-Control-Allow-Origin; GitHub Pages sends it already).

<iframe title="A sample chapter" style="width: 100%; height: 640px; border: 0"
  src="https://volumen.page/embed#src=https://example.org/sample.epub">
</iframe>

Installing

In the browser

Volumen installs from the browser as an app of its own, which opens in its own window and reads offline. Open the library, then use the browser’s install or Add to Home Screen.

Open the library
Other devices
iPhone and iPad
Open the library in Safari, tap Share, then Add to Home Screen.
Android
In Chrome, Install app in the menu.
Mac
Open the library in Safari and choose File, Add to Dock; in Chrome, the install button in the address bar.
Windows and Linux
In Chrome or Edge, the install button in the address bar.

Desktop app

The same reader as a native app for Linux, macOS and Windows, with the computer’s own fonts and full-text search across the whole library from a local database.

Linux: an AppImage, or a .deb for Debian and Ubuntu. The installers are not yet signed: macOS asks once to allow Volumen in System Settings, Privacy & Security; Windows shows a SmartScreen notice (More info, then Run anyway). All releases