https://github.com/readium/cli
⌨️ A CLI utility with support for a wide range of commands for ebooks, comics and audiobooks
https://github.com/readium/cli
a11y accessibility audiobook cli epub golang readium
Last synced: about 13 hours ago
JSON representation
⌨️ A CLI utility with support for a wide range of commands for ebooks, comics and audiobooks
- Host: GitHub
- URL: https://github.com/readium/cli
- Owner: readium
- License: bsd-3-clause
- Created: 2025-04-01T15:32:18.000Z (over 1 year ago)
- Default Branch: develop
- Last Pushed: 2026-06-06T08:43:54.000Z (about 1 month ago)
- Last Synced: 2026-06-06T10:14:53.804Z (about 1 month ago)
- Topics: a11y, accessibility, audiobook, cli, epub, golang, readium
- Language: Go
- Homepage:
- Size: 286 KB
- Stars: 23
- Watchers: 8
- Forks: 8
- Open Issues: 13
-
Metadata Files:
- Readme: README.MD
- Changelog: CHANGELOG.MD
- License: LICENSE
Awesome Lists containing this project
- awesome-readium - Readium CLI - A multi-command utility for interacting with EPUB files (Open-source applications)
README
# Readium Command Line Interface
The Readium CLI (Command Line Interface) is a multi-command utility based on the [`go-toolkit`](https://github.com/readium/go-toolkit).
It covers an extended set of use cases beyond reading, allowing authors, publishers, distributors, retailers and libraries to easily interact with publication files.
## Installation
Multiplatform builds are available directly from the [releases section](https://github.com/readium/cli/releases) of this repository.
As an alternative, to install `readium` in `~/go/bin`, run `make install`. Use `make build` to build the binary in the current directory.
## List of commands
| Command | Description |
| ------- | ----------- |
| [`manifest`](./docs/manifest.md) | The `manifest` command can parse a publication and return a [Readium Web Publication Manifest](https://readium.org/webpub-manifest/), which is printed to `stdout`. |
| [`serve`](./docs/serve.md) | The `serve` command starts an HTTPS server that can serve publications. A log is printed to `stdout`. |
## Potential additions
| Command | Description | Discussion |
| ------- | ----------- | ---------- |
| `convert` | Convert back and forth between EPUB and Readium Web Publication. | |
| `optimize` | Optimize images contained in an EPUB or a Readium Web Publication. | |
| `package` | Package images or audio files into a Readium Web Publication. | |
## Examples
```sh
readium manifest --infer-a11y=split moby-dick.epub | jq .metadata
```
```json
{
"author": {
"name": "Herman Melville",
"sortAs": "MELVILLE, HERMAN"
},
"conformsTo": "https://readium.org/webpub-manifest/profiles/epub",
"contributor": {
"name": "Dave Cramer",
"role": "mrk"
},
"http://creativecommons.org/ns#attributionURL": "http://code.google.com/p/epub-samples/",
"http://purl.org/dc/terms/rights": "This work is shared with the public using the Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) license.",
"http://www.idpf.org/2007/opf#version": "3.0",
"https://github.com/readium/go-toolkit#version": "v0.13.1",
"https://readium.org/webpub-manifest#inferredAccessibility": {
"accessMode": [
"visual"
],
"feature": [
"tableOfContents"
]
},
"identifier": "code.google.com.epub-samples.moby-dick-basic",
"language": "en-US",
"modified": "2012-01-18T12:47:00Z",
"layout": "reflowable",
"publisher": "Harper & Brothers, Publishers",
"title": "Moby-Dick"
}
```