package icon

Étagère

Browse a Calibre library on your Nextcloud and download EPUBs
New in version 1.0
Version 1.0:

- Three ways into Nextcloud: the browser, an app password, or a plain share link to your Calibre folder.
- Catalogue readable offline. Search, sort, filter by tag, author, series or publisher.
- Full record: cover, description, publisher, publication date, identifiers. Tapping an author or publisher filters the library.
- Downloads run in the background and resume after an interruption.
- Serves the library to an e-reader over Wi-Fi, with pages built for e-ink.
Étagère browses a Calibre library stored on your own Nextcloud, shows the full record for every book, and downloads the files. It does not read books — that is your reading app's job, and you already have one you like.

What it does

* Signs in to Nextcloud through the browser, using a revocable app password
* Reads the Calibre catalogue and keeps it available offline
* Covers, authors, series, ratings, publisher, languages, tags, identifiers, descriptions
* Search, sort and filter by tag, author or series
* Downloads EPUB and any other format Calibre holds, in the background
* Serves the library to an e-reader over Wi-Fi, for devices that can download from a web page

What it does not do

* No reader built in
* Never writes to your server — the library is read-only
* No account, no telemetry, no advertising

How it works

A Calibre library is a folder with a metadata.db catalogue and one subfolder per book. Étagère finds that file over WebDAV, downloads it once, and reads it locally. Covers and book files are fetched on demand, never in bulk. The catalogue is only re-downloaded when it has actually changed, so the app stays usable offline.

Sharing with an e-reader

Many e-readers can download a file from a web page but cannot read OPDS catalogues. Étagère turns the phone into a small web server on your local network, with pages designed for e-ink: no JavaScript, no thumbnails in lists, pure black on white, large tap targets. A single book can also be offered under a short address that is easy to type on an e-ink keyboard.

Traffic on that local server is unencrypted, since e-reader browsers rarely cope with anything else. Use it on a network you trust.

Requirements

A Nextcloud account and a Calibre library stored on it. Étagère does not create libraries; use Calibre on a computer for that.

Free software under the GNU GPL v3.

Versions

Although APK downloads are available below to give you the choice, you should be aware that by installing that way you will not receive update notifications and it's a less secure way to download. We recommend that you install the F-Droid client and use that.

Download F-Droid
  • Version 1.0 (1) suggested Added on Sep 05, 2026

    arm64-v8a armeabi-v7a x86 x86_64

    This version requires Android 8.0 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • android.permission.ACCESS_LOCAL_NETWORK
    • view network connections
      Allows the app to view information about network connections such as which networks exist and are connected.
    • run foreground service
      Allows the app to make use of foreground services.
    • run foreground service with the type "dataSync"
      Allows the app to make use of foreground services with the type "dataSync"
    • run foreground service with the type "specialUse"
      Allows the app to make use of foreground services with the type "specialUse"
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • show notifications
      Allows the app to show notifications
    • read the contents of your shared storage
      Allows the app to read the contents of your shared storage.
    • run at startup
      Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • modify or delete the contents of your shared storage
      Allows the app to write the contents of your shared storage.
    • fr.framagit.jeromeo.etagere.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    Download APK 1.9 MiB PGP Signature | Build Log