A clean, open-source Android client for your self-hosted BookOrbit library.
No browsers, tracking, ads, or accounts. Just your books. And a feature rich book reader.
Star-BookOrbit is a community project and is not affiliated with or maintained by BookOrbit.
BookOrbit's web UI and the built-in reader is excellent — but opening it in a browser means living with tabs, address bars, and the browser stealing your back button. Star-BookOrbit wraps it in a proper Android app so it behaves like one.
| Feature | Without Star-BookOrbit | With Star-BookOrbit |
|---|---|---|
| Interface | Cluttered with browser toolbars | Immersive, full-screen reading |
| Navigation | Device back button often closes the tab | Native back navigation within your library |
| Session | Mixed cookies; sessions can expire | Isolated environment; stays logged in |
| Integration | “Add to homescreen” still shows browser UI | Dedicated app icon and interface; works with HTTP, self-hosting, and Tailscale |
| Data Retention | Clearing browser data can wipe your server URL | Remembers your server configuration |
| Access & Performance | Cumbersome tab management; higher memory usage | One-tap access to your books; low memory footprint |
| Sync & Stats | Relies on OPDS apps; two-way sync sometimes may be delayed or unreliable, with limited reading statistics | Built-in two-way sync with instant, in-depth reading statistics direct from the BookOrbit reader |
| Hardware Controls | Touch-only / basic native page navigation | Hardware volume keys and tap zones supported for page turning |
audiobook.mp4
- Native Android Reading Experience: Full-screen, edge-to-edge reading with no browser address bars, tabs, or browser UI.
- Built-in BookOrbit Reader: Read directly through the BookOrbit reader with its built-in two-way sync and reading statistics, instead of using a separate ebook app.
- HTTP, HTTPS & Tailscale Friendly: Connect to local IP addresses, custom ports, plain HTTP, HTTPS, or BookOrbit instances accessed through Tailscale.
- Persistent Server Configuration: Your BookOrbit server URL is securely stored and remembered across app restarts.
- Encrypted Local Storage: Server URLs and connection data are protected using Android's
EncryptedSharedPreferences. - Draggable Utility Button: A translucent, movable floating button (FAB) provides quick access to refresh, switch servers, and settings without getting in the way of your reading.
- Hardware Page Controls: Use your device's volume keys or tap zones to move between ebook pages for convenient, ergonomic navigation.
- Material You Dynamic Colors: Automatically adapts to your system color palette on Android 12+ for a native, personalized experience.
- Audiobook Support: Listen to audiobooks directly through the app, including background playback.
- Lightweight & Focused: Designed specifically for self-hosted BookOrbit without unnecessary browser overhead.
- FOSS & Private: 100% free and open-source. Zero telemetry, zero analytics, zero ads, and no accounts required.
- Android 8.0+ (API 26)
- A running BookOrbit instance accessible from your phone (the url:port should be your own BookOrbit address). For example:
- Local network:
http://192.168.x.x:8090 - Remote (e.g. via Tailscale):
http://100.x.x.x:8090 - Public HTTPS (e.g. via Cloudflare or nginx or Tailscale funnel):
https://your-device.ts.net
- Local network:
Download the latest APK directly:
git clone https://github.com/Star-Trowa/StarBookOrbit.git
cd StarBookOrbit
./gradlew assembleRelease- Open StarBookOrbit — enter your BookOrbit server URL on first launch
- Tap Connect — your library opens full screen
- The small floating, translucent button gives you Refresh, Swap server and Settings
Tip: Drag the button anywhere on screen to keep it out of the way when reading books
Note: If you use any proxy or VPN for your BookOrbit, make sure to turn it on before connecting in this app.
Android's battery optimization might kill the app while you are listening with the screen off. To fix this:
- In app, go to Settings > Battery
- Update the battery settings to unrestricted
OR
- Long-press the StarBookOrbit app icon and tap App Info (the ⓘ button).
- Tap on App battery usage (or just Battery).
- Change the setting from "Optimized" to "Unrestricted".
The setting need to be enabled first to turn pages using volume keys. To enable this:
- In app, go to Settings > Navigate Ebook
- Change the toggle to enable (or disable) navigation via the volume keys
The setting need to be enabled first to use tap-zones for navigation. To enable this:
- In app, go to Settings > Navigate Ebook
- Change the toggle to enable (or disable) navigation via the tap-zones
- Use volume keys to navigate between pages
- Material You dynamic colors — the app automatically adapts to your phone’s system color palette on Android 12+ for a more native, personalized reading experience
- Add option to navigate via tap besides swipe
- Multiple saved server URLs
- Theme override (force light/dark independently of system settings)
- Support for Audiobookshelf and Kavita
- F-Droid/Droidify release
PRs welcome. Please follow clean coding practices, and the existing architecture — SOLID principles, clean separation between data, domain, and presentation layers.
Also, try to aim for adding test coverage for the code added/edited.
MIT — see LICENSE for details.
If Star-BookOrbit made your bookworming a little nicer, a little happier, consider supporting my work:
- GitHub Sponsors: Sponsor @Star-Trowa
- Ko-fi: ko-fi.com/Star_Trowa
If Star-BookOrbit has been useful to you, please ⭐ star the project on GitHub. It helps others discover it too.
Thank you for supporting the project!







