ZotShelf extracts covers from the EPUBs in your Zotero library and displays them in a beautiful, browsable grid. Quickly see your entire digital book collection at a glance and access your books with a single tap.
Zotshelf allows you to select a collection, a set of tags or a combination of a collection and tag(s).
The app is currently in closed beta testing. Contact me if you would like to test it at appbugge@gmail.com.
- Set up your Zotero credentials - Choose between:
- Easy OAuth Login: Click "Login with Zotero" and authenticate through Zotero's website (recommended)
- Manual Entry: Enter your Zotero username, user ID, and API key manually
- Connect to your library - ZotShelf securely connects to your Zotero account and finds all your EPUB books.
- Select a collection, tag(s) or a combination - Filter your library by collection and/or tags.
- Extract covers - The app automatically extracts cover art from each EPUB file in your library.
- Browse your covers - Explore your digital bookshelf, and tap any cover to start reading.
- Multiple tabs - ZotShelf supports tabs, each with a different combination of collection and tags.
- Stay updated - Pull down to refresh whenever you add new books to your Zotero library.
To use ZotShelf, you'll need:
- An Android device running Android 6.0 (Marshmallow) or newer
- A Zotero account with EPUB books in your library
- Authentication credentials:
- For OAuth Login (recommended): Just your Zotero username and password
- For Manual Entry: Your Zotero API key, username and User ID (available at https://www.zotero.org/settings/keys - please select read only)
If you're building the app from source, you'll need to register your own OAuth application with Zotero. See OAUTH_SETUP.md for detailed instructions.
ZotShelf is built using native Android technologies with a focus on performance and reliability:
- Java-based Android application with modern architecture patterns
- OAuth 1.0a authentication for secure, user-friendly login via Zotero
- Retrofit and OkHttp for efficient API communication with Zotero
- Room Database for local caching of book covers and metadata
- RecyclerView with GridLayoutManager for smooth scrolling performance
- SwipeRefreshLayout for intuitive pull-to-refresh functionality
- Glide for efficient image loading and caching
- Material Design components for a clean, modern UI
- Home screen widget for quick access to your books
- Offline mode for viewing your collection without an internet connection
ZotShelf is completely open source under the MIT License. You can find the source code, contribute, or report issues here.
If you find ZotShelf useful, consider
- Starring the project on GitHub
- Reporting bugs or suggesting features
- Contributing code improvements
- Buying me a coffee