ReadRealm provides a reading experience that works across every platform. Books are sourced from Project Gutenberg via the Gutendex API and rendered natively on Android (Kotlin), iOS (Swift), and through the web interface. You get rich text formatting, images where available, and reading progress that stays in sync.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/aliammari1/readrealm/llms.txt
Use this file to discover all available pages before exploring further.
Android
Native reader built with Kotlin and Jetpack Compose.
iOS
Native reader built with Swift.
Book discovery
Automatic link resolution from Gutendex.
Progress sync
Your position in a book syncs across all devices.
How books are fetched
When you open a book, ReadRealm looks up the book on the Gutendex API (a Project Gutenberg catalog) by title. The service checks the available formats in this order:text/plain; charset=us-asciitext/plain; charset=utf-8text/plain
link field containing the direct URL to the book’s text content when available:
The
link field is only populated when Gutendex has a plain-text version of the book. Some titles may not have a readable link if they are outside the Project Gutenberg catalog.Platform rendering
- Android
- iOS
- Web / Admin Dashboard
The Android client is built with Kotlin and Jetpack Compose. The reader loads the plain-text content from the
link URL and renders it in a scrollable, styled view. Compose handles text layout, line spacing, and font rendering natively.What the EPUB service does
The backend EPUB service (epub.service.ts) is responsible for resolving a human-readable book title into a direct download link. It:
- URL-encodes the title and queries
https://gutendex.com/books?search={title} - Searches the results for a book whose title closely matches the query
- Returns the first available plain-text format URL
- Returns an empty string if no match is found, so the reading link is gracefully omitted
Reading progress
Reading progress is tied to your user account and syncs across devices. When you return to a book on a different device, ReadRealm picks up where you left off.Book details page
Before opening a book to read, you can review its details:| Field | Description |
|---|---|
title | Book title |
author | Primary author name |
publicationYear | Year of first publication |
numOfPages | Median page count |
coverImage | Cover image from Open Library |
genre | Primary subject/genre |
description | AI-generated five-line summary |
averageRating | Mean rating from all reader reviews |
totalReviews | Number of reviews submitted |
link | Direct URL to book text content |