Everything you need to know to enjoy Ember Read, the e-reader that brings your reading to life.
If you already have an account, tap Log in and enter your credentials. Check “Remember me” to stay logged in.
.epub or .eread file from your phone.eread files are enriched EPUBs created by Ember Read: they contain the book text plus a pre-computed intensity analysis (heatmap, keywords, tension curve). The result: no waiting for analysis — immersion mode is available as soon as you open the book.
At the very top of the screen, an information bar displays four indicators:
| Position | Element | Details |
|---|---|---|
| Left | 🔥 Streak X days | Number of consecutive days you have read at least one page. Tap it to go directly to the Stats tab. |
| Center | 📖 X/Y books | Progress toward your monthly goal (set in Settings > Library > Monthly goal). The bar fills up as you go. Tap it to change the period. |
| Center-right | TBR X | Number of books in your To Be Read list (favorites + BookTree items). Tap it to open the monthly goal setting. If your TBR is empty, the text appears in italic gold “No TBR”. |
| Right | Premium badge | Shows “Unlimited Pass” (gold badge) if you are subscribed, or “X credits” otherwise. Tap it to access the Subscription page. |
Below the header, two icons are visible:
Just below the header, three tabs organize your library:
| Tab | Content | Details |
|---|---|---|
| My books | All your imported books | This is the default tab when you open the app. It displays all your EPUB and .eread books, with their cover, progress, and badges. |
| Favorites | Your To Be Read list (TBR) | Contains books you have marked as favorites (via long press > “Add to favorites”) and books discovered through BookTree that you added to your TBR. BookTree items display links to retailers (Fnac, Amazon, etc.). |
| Collections | Your custom folders | Create up to 10 collections to organize your books. Each collection has a name and shows how many books it contains. Tap a collection to view its contents. |
A “Catalog” button appears at the end of the tabs: it opens the Ember Read catalog to discover and add new books.
Below the tabs, a search field lets you filter your books in real time by title or author. The search is instant: each keystroke refines the list. Tap the X to the right of the field to clear the search and return to the full list.
Below the search bar, filter buttons let you refine the view:
| Filter | Options | How to use |
|---|---|---|
| Reading status | All, New, In progress, Finished | Tap one of the buttons. The active filter is highlighted in gold. Tap again to deactivate. |
| Pairing | FM, FF/Sapphic, MM/Gay, MFM, FFM, Reverse Harem | Filter books by relationship type. Only one pairing active at a time. Tap again to deactivate. |
| Spice level 🌶️ | 1 to 5 | Filter by intensity level. 1 = soft, 5 = steamy. |
| Sort | Date added, Author A→Z, Title A→Z, Spice level | Tap the ↕ Sort icon to change the display order. The active sort is indicated by an arrow. |
At the top right of the filter area, a button toggles between two display modes:
Your choice is remembered: the app will return to the same display mode the next time you open it.
Each book in the library displays several pieces of information:
The Catalog tab (button to the right of the tabs) lets you browse Ember Read books:
Create a collection:
Add a book to a collection:
Delete or rename: in the Collections tab, long press on a collection name to rename or delete it. Maximum 10 collections.
The Favorites tab is your To Be Read (TBR) list: it gathers the books you want to read next.
Add a book to your TBR:
BookTree items in your TBR display purchase links (Fnac, Amazon, Cultura, etc.) so you can buy the physical or digital book.
The floating + button at the bottom right of the screen opens your phone’s file picker. Select an .epub or .eread file to import it into your library.
The reader displays your book text in continuous vertical scroll. Your progress is saved automatically with every scroll. A reading line (a thin horizontal mark on the left edge) serves as your reference point: this is where the current word is detected for vibrations and TTS.
The top bar contains 6 buttons, from left to right:
| Icon | Button | Action | Details |
|---|---|---|---|
| ← | Back | Leave the book and return to the library | Progress is saved automatically before exiting. |
| (Book title + “Chapter X/Y”) | Information area | Displays the book title in bold and the current chapter number in gray below it. | |
| 🔍 | Search | Opens the in-text search bar | See Search section below. |
| ✏️ | Annotations | Opens the Notes & bookmarks panel | Displays the unified list of all your bookmarks and highlights for this book. See Panel section below. |
| 🔖 | Bookmark | Add or remove a bookmark at the current position | Tap: adds a gold bookmark (or removes it if one already exists). The icon switches from “+” to “−” when a bookmark is present. Long press without bookmark: opens a 5-color picker to choose the bookmark color before adding it (gold, pink, mint, sky blue, lavender). Long press with bookmark: opens the Notes & bookmarks panel directly. |
| ☰ | Chapters | Opens the table of contents | Lists all chapters in the book. Tap a chapter to jump directly to it. The current chapter is highlighted. |
| Aa | Reading settings | Opens the settings panel | See Text settings section below. |
The bottom bar is the reader’s control center. It works with a compact/expand system:
When the menu is closed (no center tap), you always see:
When the menu is open (center tap), the bar expands and shows more controls:
1. Tension curve (heatmap)
A multicolored bar replaces the simple progress bar. It represents the emotional intensity curve of the entire book. Colors indicate the intensity level of each passage (blue = calm, gold = rising, orange = intense, red = climax). A vertical cursor shows your position. You can tap anywhere on the heatmap to jump to that passage.
2. Intensity slider (in immersion mode)
When Toys mode is active, a RangeSlider appears with the label “Immersion” and a vibration icon. It shows the min–max range of vibration (e.g. “20–80%”). You can adjust both cursors to set the minimum and maximum vibration intensity in real time.
3. Controls row
The main controls row contains, from left to right:
| Button | Icon | Action | Details |
|---|---|---|---|
| Previous chapter | ⏮ | Jump to the start of the previous chapter | Hidden during auto-scroll. |
| Play / Stop | ▶ / ⏹ | Start / stop auto-scroll | Round gold button. When scrolling is active, the button turns red with a Stop icon and grows slightly larger to signal that scrolling is active. |
| Next chapter | ⏭ | Jump to the start of the next chapter | Hidden during auto-scroll. |
| (space) | |||
| “Social” chip | 👥 | Join a social reading session | Only visible if the feature is enabled. See Social reading. |
| “Annot.” chip | ✏️ | Enable / disable annotation mode | When active (gold), you can select text to create highlights. Long press on the chip to open the Notes & bookmarks panel directly. |
| “Toys” chip | 📳 | Enable / disable vibrations | Promoted to the main row when Toys mode is active (gold). Otherwise, accessible via the secondary panel. |
| “Demo” chip | 📱 | Enable / disable Demo mode (phone vibrator) | Promoted to the main row when active. Otherwise, accessible via the secondary panel. Demo and Toys are mutually exclusive. |
| Expand button ▼ | ▼ | Open / close the secondary panel | Small round button. The arrow rotates 180° when the panel is open. If a mode is active (Toys, TTS, etc.), the button is tinted gold to signal there are options below. |
4. Secondary panel (expand)
Tap the ▼ button to unfold the secondary panel. It displays the inactive modes as chips:
Permanently visible at the bottom of the screen (even with menu closed), you see:
When an interactive mode is active (TTS, Soundscape, Manual control, or Social reading), a floating rounded capsule appears at the bottom of the screen, independently of the menu. It only shows the currently active modes:
| Chip | Icon | Tap action | Long press action |
|---|---|---|---|
| TTS | 🔊 | Enable / disable text-to-speech | Open voice settings (speed, pitch, volume) |
| Sound | 🎧 | Enable / disable the soundscape | — |
| Manual | 🎮 | Open manual vibration control | — |
| Social | 👥 | Open the social reading session | — |
Each active chip is separated by a thin vertical line. The capsule disappears when you deactivate all modes.
Create a highlight:
| Element | Details |
|---|---|
| 5 color dots | Gold (🟡), Pink (🔴), Mint (🟢), Sky blue (🔵), Lavender (🟣). Tap a color to apply the highlight. |
| 3 style buttons | Highlight (colored fill behind text), Underline (line under text), Wavy (wavy line under text, “squiggly” style). |
| “Note” button | Opens a text field to add a personal comment to this highlight. |
Edit an existing highlight:
Tap a highlight in the text to open the edit dialog:
| Element | Details |
|---|---|
| Text preview | The highlighted text is displayed in italic on a colored background (the current highlight color, muted). |
| 5 color dots | Same 5 colors as during creation. The current color has a white checkmark. Tap another color to change it. |
| 3 style buttons | Highlight / Underline / Wavy. The active style has a gold background. Tap another style to change it. |
| Note field | Free text field (3 lines max) to add or edit a personal comment. |
| “Delete” button | Bottom left, red text. Permanently deletes the highlight (confirmation is required). |
| “Cancel” button | Closes the dialog without saving changes. |
| “Save” button | Gold button at the bottom right. Saves changes (color, style, note). |
This panel unifies all your bookmarks and highlights in a single list. To open it:
The panel opens as a bottom sheet (slides up from the bottom) and displays:
| Element | Position | Details |
|---|---|---|
| “Notes & bookmarks (X)” title | Header | Total number of items in parentheses. |
| Sort button | Header, right | Toggles between sort by position (sort icon) and sort by date (clock icon). Position sort displays items in book order; date sort shows the most recent first. |
| Export button | Header, right | Gold share icon. Exports all your annotations as a Markdown (.md) file that you can share or save. Only visible if there are items. |
| Type filters | Below header | 3 chips: All (X), Bookmarks (X), Annotations (X). Each chip shows the item count. The active filter is highlighted in gold. |
| Color filters | Below type filters | 6 round dots: “All” (∞ icon) + the 5 colors (gold, pink, mint, blue, lavender). Tap a color to show only items of that color. Tap again to deactivate the filter. |
| Item list | Body | Each item displays: a color bar on the left (or a bookmark icon), a text preview (80 characters max), the associated note (if any), and the age (“just now”, “3h ago”, etc.). Tap to navigate to that item in the text. Trash button on the right to delete. |
Tap the Aa button at the top right to open the customization panel. It has 4 tabs:
Customize the font and text size:
Controls the appearance and spacing of text:
| Setting | Type | Details |
|---|---|---|
| Page color | 6 round dots | Choose the background color from 6 themes: Dark (black), Sepia (warm beige), Light (white), Blue (night blue), Cream (warm white), AMOLED (pure black). The active dot has a thick gold border. |
| Continuous scroll | Toggle on/off | Enables continuous scrolling (no pagination). |
| Left-handed mode | Toggle on/off | Moves auto-scroll speed controls and certain buttons to the left side of the screen, for left-thumb use. |
| Line spacing | Slider (1.2 to 2.2) | Adjusts the spacing between lines. The current value is displayed to the right of the slider (e.g. 1.6). |
| — Accessibility separator — | ||
| Bold text | Toggle on/off | ♿ icon. Makes all text bold for better readability. |
| Bionic Reading | Toggle on/off | ✨ icon. Bolds the first half of each word to guide the eye and speed up reading. For example, the word “reading” displays as “reading”. |
| Dyslexia Mode | Button on/off | Aa icon. Outlined button (highlighted in gold when active, with a ✓ checkmark). Activates the OpenDyslexic font, increases letter and word spacing, and adds a reading guide to make reading easier for people with dyslexia. |
Controls colors, brightness, and automatic day/night mode:
| Setting | Type | Details |
|---|---|---|
| Brightness | Slider | Low sun icon on left, high sun icon on right. Adjusts brightness from 20% to 100%. Disabled if automatic brightness is active. |
| Auto brightness | Toggle on/off | Auto sun icon. Lets the system manage brightness. |
| Auto Day/Night | Toggle on/off | Star icon. Automatically switches between a day and night theme based on the time. When enabled, two sub-rows of dots appear: |
| ☀ Day: Light, Sepia, Cream (choose your day theme) 🌙 Night: Dark, Blue (choose your night theme) | ||
| 6 theme presets | Grid of 6 tiles | Each preset shows an “Aa” preview with the corresponding background and text colors. The active tile has a gold border. The 6 themes: Dark (black background, light text), Sepia (beige background, brown text), Light (white background, black text), Blue (night blue background, light blue text), Cream (ivory background, black text), AMOLED (pure black #000 background, light gray text — ideal for OLED screens, saves battery). |
Technical options and Bluetooth connection:
| Element | Details |
|---|---|
| Bluetooth status | Rounded card showing the connection status. If connected: green Bluetooth icon + device name (or “X toys” if multi-device). If disconnected: gray icon + gold “Connect” button that opens the connection screen directly. |
| Auto-connect last device | Info line with Bluetooth search icon and gold checkmark. Indicates that the app will automatically try to reconnect to your last device. |
| Clear analysis cache | Button with trash icon. Deletes analysis data (heatmap, keywords) for your books. Useful if a book was analyzed incorrectly. Books will be re-analyzed the next time they are opened. |
Auto-scroll mode scrolls the text on its own — perfect for hands-free reading.
The heart of Ember Read: vibrations sync with the intense passages of the text you’re reading.
Ember Read supports 6 brands of connected toys, plus a demo mode:
Three ways to connect your toy:
If your device isn’t detected automatically (some models require a specific pairing mode), use the 4-step assistant:
The Bluetooth management screen shows the list of all connected devices with their name, brand and battery level (if available). You can disconnect a device individually by tapping on it.
Tap the Toys chip in the reader’s bottom bar:
At the bottom of the reader, the progress bar is colored according to the emotional intensity of each passage:
| Color | Intensity | What it means |
|---|---|---|
| Blue-gray | Soft | Calm passages, dialogue, descriptions |
| Gold | Building | Tension is rising, preludes |
| Orange | Intense | Passionate scenes |
| Red | Climax | Peak intensity moments |
When immersion mode is active, an indicator appears in the top right corner:
Tap Manual (tab in the navigation) for direct control:
The TTS panel is a rounded black floating bar in the center of the screen containing, from left to right:
| Button | Icon | Action | Details |
|---|---|---|---|
| Play / Pause | ▶ / ⏸ | Starts or pauses voice playback | When paused, the text stays highlighted on the last spoken word. Tap again to resume. |
| Stop | ⏹ | Completely stops playback | Word-by-word highlighting disappears. Grayed out when TTS is not active. |
| Speed | 1.0x | Opens TTS settings | Displays the current speed in a rounded gray badge. Tap to open the full settings panel (see below). |
| Close | ✕ | Closes the TTS panel | Deactivates text-to-speech and hides the floating panel. |
During voice playback, each word is individually highlighted at the exact moment it’s spoken. The text scrolls automatically so the current word always stays visible on screen. You don’t need to touch anything: TTS controls the scroll.
Tap the speed badge (e.g. “1.0x”) to open the settings panel. A bottom sheet appears with:
| Setting | Type | Range | Details |
|---|---|---|---|
| Enable TTS | Toggle on/off | — | Globally enables or disables the TTS feature. Shows “Text audio playback” when active, or “Not available with your plan” if the feature is disabled for your account. |
| Voice selection | Horizontal carousel | — | Displays all voices available on your phone. Each voice is shown as a chip with its name. High-quality (Enhanced) voices have a star icon ✨. The active voice is highlighted in pink. Tap a voice to select it — playback resumes with the new voice. |
| Speed | Slider | 0.2x to 2.0x | Controls voice playback speed. The value is displayed to the right of the slider (e.g. “1.4x”). 1.0x = normal speed. |
| Pitch | Slider | 0.5 to 2.0 | Controls the pitch (low/high) of the voice. 1.0 = normal pitch. |
| Volume | Slider | 0 to 100% | Controls text-to-speech volume, independently from the system volume. |
Makes your device vibrate to the rhythm of the ambient music.
| Pattern | Description |
|---|---|
| Smooth | Follows the music gently |
| Pulse | Reacts to energy and beats |
| Beat | Only vibrates on the beats |
| Wave | Steady undulation |
| Intense | Strong, modulated by energy |
| Staccato | Ultra responsive |
At the top of the screen, the title “Statistics” is displayed in large text. To the right of the title, a 📤 Share button (gold, visible only for premium users) opens the shareable cards creation screen.
Two summary cards are displayed at the top if you’ve read recently:
These summaries disappear if you haven’t read during the relevant period.
| Period | What it covers |
|---|---|
| Today | Today’s reading sessions |
| 7 days | The last 7 days |
| This month | The current month |
| 3 months | The last 3 months |
| This year | The current year |
| All time | Since your account was created (default value) |
A dedicated card displays your consecutive reading day streak:
Six small cards display your key KPIs for the selected period:
A bar chart displays your reading minutes per month for the current year. Each bar represents a month (Jan–Dec). The current month is highlighted in gold.
A colored grid (7 days × 24 hours) shows at what times of the week you read the most. The darker cells indicate your preferred reading time slots.
Badges reward your reading achievements. Badges not yet earned are displayed in gray with the condition to fulfill.
| Badge | Name | Condition |
|---|---|---|
| 📚 | Bookworm | 10 or more books read |
| 🔥 | On Fire | 7-day consecutive streak or more |
| 😈 | Naughty | 20 books read at maximum intensity level (5 spice) |
| 🏆 | Champion | 100 books read in total |
| 💧 | Glutton | 5 books read in a single week |
| 🎯 | Consistent | 50 or more active reading days |
| ⏰ | Night Owl | Most of your reading happens after 9 PM |
| 🌅 | Early Bird | Most of your reading happens before 9 AM |
Your profile is displayed in a card with:
Free users see their profile name but not the details — a “Go Premium” button invites them to subscribe.
A gold banner appears in the dashboard with the ✨ icon and the title “Ember Wrapped XXXX”. Tap it to open the retrospective:
Swipe left/right to navigate between pages. Free users see a preview (number of books) but must go premium to see the full retrospective.
How to create a card:
Ember Read works with a credit system: each credit unlocks immersion mode (synchronized vibrations) for one book. Reading the text is always free — only immersion requires credits. Once unlocked, immersion stays active forever for that book. Credits never expire.
Unlimited Pass: monthly subscription that unlocks immersion on all books without limit, plus premium features (advanced stats, Ember Wrapped, shareable cards, multi-device up to 4 toys, BookTree, detailed reader profile).
| Platform | How to buy | Details |
|---|---|---|
| iOS | Directly in the app | Purchases go through Apple In-App Purchase. Prices may vary slightly depending on your country. |
| Android | In the app or on the web | You can buy in the app (Google Play) or at emberread.com/tarifs.html (Stripe payment, sometimes cheaper as there’s no store commission). |
| Platform | How to manage |
|---|---|
| iOS | iPhone Settings > your name (at the top) > Subscriptions > Ember Read. You can modify, cancel or renew your subscription there. |
| Android (web) | Log in at emberread.com/compte.html with the same email as your app account. You’ll find your subscription status and the cancellation button there. |
If you have a Discovery Pass, here’s what you’ll see:
Using a gift code:
XXXX-XXXX-XXXX-XXXXGift code types:
| Type | What it unlocks |
|---|---|
| Credits | Adds X credits to your account (e.g. 5, 10, 20 credits) |
| Subscription | Activates the Unlimited Pass for a given duration (e.g. 1 month, 3 months) |
| Specific book | Unlocks immersion for a specific book in the catalog |
Redeem a gift code on the website:
Send a gift card:
Promo codes are temporary promotions (launches, events, partnerships). Unlike gift codes, they use a free text field (not the XXXX-XXXX format).
The Settings tab (gear icon ⚙️, first tab on the main navigation bar) lets you customize the entire app. The page is laid out as a list of sections you can scroll through vertically.
The first section at the top of the page:
| Element | Details |
|---|---|
| Avatar | A golden circle with your initials. Not editable (no profile picture in this version). |
| Username | Your display name, shown on shareable cards and in social reading sessions. Tap on it to edit. Rules: 20 characters max, editable once every 90 days (or 30 days with the Unlimited Pass). A message tells you when you can change it again. |
| Reader profile | Below your username, a line displays your profile icon (emoji) and your label (e.g. “🦊 Explorer”). Calculated automatically based on your reading habits. Premium only: free users see the label but not the details. |
Tap on “Theme” to choose from the available palettes. The “Sync” button checks whether new palettes are available on the server.
| Element | Details |
|---|---|
| Email address | The email associated with your account. Not editable within the app. |
| My devices | Displays the list of phones linked to your account. Credits: 1 device maximum. Unlimited Pass: up to 2 devices. Tap on a device to remove it if you switch phones. |
| Log out | Logs you out of your account. Your imported books remain on the phone, but purchases and sync are no longer accessible. |
| Delete my account | Permanently deletes your account and all your data. Irreversible. A confirmation is required. |
| Element | Details |
|---|---|
| Status | Displays “Unlimited Pass” (golden badge) if subscribed, or “X credits remaining” if not subscribed. |
| Buy / Subscribe | Button to access credit packs and the Unlimited Pass (redirects to the in-app store on iOS, or to the web on Android). |
| Restore purchases | Button that re-checks with the App Store / Google Play whether you have any unsynced purchases. Useful after a reinstall. |
| Gift code | Opens the gift code entry screen (4 fields × 4 characters). See Credits section. |
| Promo code | Opens a free-text field to enter a promotional code. See Credits section. |
A double slider (RangeSlider) lets you set:
The range is displayed as a percentage (e.g. “20–80%”). It applies to all modes: immersion (reading), audio (music), and manual control.
| Element | Details |
|---|---|
| Restore my purchases | Re-downloads all the books from the Ember Read catalog that you previously unlocked. Useful when you switch phones. |
| Auto sync | Toggle on/off. When enabled, your reading progress, bookmarks, annotations, and stats are saved to the cloud and synced across your devices. |
| Monthly goal | A slider from 0 to 50 books per month. The chosen value appears in the library header as a progress goal. Set to 0 to disable the goal. |
| Local transfer (P2P) | Opens the P2P transfer screen to send or receive your library over WiFi. See Transfer section. |
| BookTree history | List of all your previous BookTree scans. Swipe left on an item to delete it, or use the “Clear all” button. |
| Element | Details |
|---|---|
| Dyslexia mode | Enables the OpenDyslexic font throughout the reader, increases letter and word spacing, and adds a reading guide. Same setting as in the reading panel — both are synced. |
| Bionic Reading | Bolds the first half of each word in the reader. Same setting as in the reading panel. |
| Bold text | Makes all text bold in the reader. |
| Spacing | Increases the space between letters and words to improve readability. |
| Element | Details |
|---|---|
| Connection status | Displays the name of the connected device and its icon (green Bluetooth). If no device is connected: grey icon “Not connected”. If multiple: “X toys connected”. |
| Battery level | If the device reports its battery level, it is displayed as a percentage with color coding: 🟢 green (>50%), 🟠 orange (20-50%), 🔴 red (<20%). |
| “Connect” / “Manage” button | If disconnected: golden “Connect” button that opens the Bluetooth scan screen. If connected: green “Manage” button that opens the management screen (disconnect, test, switch device). |
| Connection wizard | Link to the 4-step assistant for devices not automatically detected. See Immersion section. |
| Manual control | Link to the direct vibration control screen (sliders, patterns, 2D zone). |
| Element | Details |
|---|---|
| User guide | Opens this guide directly inside the app (built-in webview). |
| Replay introduction | Restarts the onboarding tutorial (the welcome screens with explanatory bubbles). |
| Re-enable help bubbles | Restores the contextual help bubbles that appear the first time you use a feature. |
| Contact support | Opens a pre-filled email to support@emberread.com with your device’s technical info (app version, phone model, OS). |
| Element | Details |
|---|---|
| Dictionary version | Displays the version of the keyword dictionary used by the intensity analysis engine. The dictionary is updated regularly to improve detection. |
| Force sync | Downloads the latest dictionary version from the server, even if you are already up to date. Useful if you experience analysis issues. |
| Element | Details |
|---|---|
| Clear analysis cache | Deletes all analysis data (heatmap, keywords, tension curve) from your books. The books will be re-analyzed the next time they are opened. This does not delete the books themselves. |
| Element | Details |
|---|---|
| Version | App version number (e.g. v1.3.0+43). Share this with support if you experience an issue. |
| Terms of use | Opens the terms of use in a webview. |
| Privacy policy | Opens the privacy policy in a webview. |
Two ways to open BookTree:
If you already know the title or author of a book, you can do a manual search. The search screen opens on a dark background with the following elements:
| Element | Position | Details |
|---|---|---|
| App bar | Top | Title “Identify a book”, back arrow on the left. |
| Magnifying glass icon | Centered | 64px circle with light golden background (14% opacity), golden 🔍 magnifying glass icon in the center (32px). |
| Title | Below the icon | “Search for a book” (18px, bold, centered). |
| Subtitle | Below the title | Help text (13px, grey, centered) explaining how to use the search. |
| “Title” field | Form | “Title” label above the field. 📖 book icon on the left inside the field. Dark background, thin border. On focus: golden border (1.5px). The cursor is automatically placed in this field when the screen opens. |
| “Author” field | Below the Title field | “Author” label above the field. 👤 person icon on the left. Same style as the Title field. Optional field. |
| “Search” button | Full width | Solid golden button with white text (16px, bold). Rounded corners (14px). Pressing Enter in either field also triggers the search. |
| Footer | Bottom | Informational text (11px, grey, centered). |
| State | Appearance | Condition |
|---|---|---|
| Normal | Golden button with “Search” text. | The Title field contains text. |
| Loading | Greyed-out button (not clickable) with a white spinner (20px) in the center replacing the text. | A search is in progress (resolution via Open Library, Google Books, DuckDuckGo). |
| Error | A red error message (13px) appears above the button. The button becomes clickable again. | The resolution failed (network issue, book not found, etc.). |
Results are displayed in full screen on a dark background with a vertical carousel: swipe up to go to the next book. Scans are automatically saved to the history.
| Element | Position | Details |
|---|---|---|
| Source bar | Top (dark gradient) | On the left: back arrow (←, 18px). Then a golden dot (7px) glowing to indicate identification is active. Then the source: • If social scan: “Detected from” + “@handle” (name in bold, white). • If manual search: “Search results” (grey). Far right: counter badge rounded (dark background, thin border) showing “1 / 3”, “2 / 3”, etc. |
| Navigation rail | Right edge, vertically centered | Only visible if there are ≥2 books. Composed of: • Up arrow (▲, 22px, semi-transparent white) — visible if you are not on the first book. Tap to go up one book. • Vertical dots — one per book. The active dot is golden and larger (28px tall vs 16px). Inactive dots are semi-transparent white. Tap a dot to jump directly to that book. Dot width: 5px, rounded corners. • Down arrow (▼, 22px) — visible if you are not on the last book. • Compact mode (>12 books): only ~15 dots are displayed with a sliding window centered on the current book. Dots at the edges progressively shrink (fade effect). |
| Swipe hint | Bottom of 1st slide | Downward arrow (▼) + text “Swipe up to see more” (11px, grey). Visible only on the first book when there are multiple results. |
Each book is displayed in a full-screen slide with 2 horizontal pages (swipe left/right). The first page shows:
| Element | Details |
|---|---|
| Cover | Large image with a 3D effect (slight perspective tilt). Drop shadow and book spine effect on the left. |
| Confidence indicator | Badge below the cover with a colored dot: 🟢 Green (≥70%): “Identified from Google Books” — reliable identification. 🟠 Orange (<70%): “Low confidence — please verify” — the AI is not 100% sure. |
| Title | The full book title, in a serif font (Fraunces), large size. |
| Author | “By [author]” with the name in italics. |
| ISBN | The ISBN number if available (small text, grey). |
| Immersive block | If the book is in the Ember Read catalog: a card with an orange gradient, “IN CATALOG” badge, and a golden “Read in immersive mode” button that opens the book directly in the reader. If the book is not in the catalog: a card with a grey border and a “Get notified” button (to signal your interest). |
| Ember Read link | If the book is in the catalog, a “View on Ember Read” link provides access to details (reviews, rating). |
| TBR button | “Add to TBR” (bookmark icon + text). After adding, the button changes to “In TBR” (green with checkmark). Tap again to remove. |
| “Where to buy” link | Button at the bottom that slides to Page 2 (merchant links). Displays “Verify the book first” if confidence is low. |
Swipe left from Page 1 to display the merchant links. A compact header (back arrow + mini cover + title/author) lets you return to Page 1.
| Merchant | Logo | Details |
|---|---|---|
| Fnac | F (golden) | Direct link to the Fnac book page. |
| Amazon | a (orange) | Direct link to the Amazon book page. |
| Cultura | C (red) | Direct link to the Cultura book page. |
| Lalibrairie.com | L (green) | Direct link to Lalibrairie.com. |
| Decitre | D (blue) | Direct link to the Decitre book page. |
Each merchant tile shows the price (if available) and a green “DRM-free” badge if the book is DRM-free at that merchant. DRM-free merchants are listed first. If a link to the author page (Babelio) exists, it appears below the merchants.
BookTree keeps a history of all your previous scans. To access it:
| Element | Position | Details |
|---|---|---|
| App bar | Top | Title “History”, back arrow. On the right: 🗑 broom icon (clear all). A small spinner (16px) appears next to it when the app is automatically enriching incomplete books (missing covers). |
| Empty state | Centered | If no scans: 🕓 clock icon (48px, grey) + text “No scans” (14px, grey). |
| Scan list | Page body | Each scan is a row separated by a thin line. |
| Element | Details |
|---|---|
| Thumbnail cover | On the left: book image (40×56px, rounded corners 6px). If no cover: dark background with 📚 open book icon. |
| Title | Book title (14px, semi-bold). Truncated to 1 line. |
| Author | Author name (12px, grey). Truncated to 1 line. |
| Time elapsed | Displayed as relative time (11px, light grey): • “Just now” (< 1 min) • “X min” (< 1 hour) • “X hours” (< 1 day) • “X days” (< 1 week) • “MM/DD/YYYY” (≥ 1 week) |
| Chevron | “>” arrow (18px, grey) on the far right (hidden in selection mode). |
After a long press, the interface changes:
| Element | Details |
|---|---|
| Bar title | Replaces “History” with “X selected”. |
| Back button | Replaced by a ✕ that exits selection mode. |
| Checkmarks | To the left of each item: empty circle (unselected) or filled golden checkmark (selected). Selected items have a light golden background. |
| “Select all” icon | Top right: ☑ icon (22px). Tap to select all items (or deselect all if everything is already checked). |
| Delete icon | Next to “Select all”: 🗑 trash icon (22px). Tap to delete selected items (a confirmation dialog appears: “Delete X item(s)?” with “Cancel” / “Delete”). |
In normal mode, tap the 🗑 broom icon at the top right. A confirmation dialog appears with “Cancel” / “Delete”. The deletion is permanent.
| State | Appearance | Details |
|---|---|---|
| Starting | Centered text | “Starting the server...” while the app creates the local WiFi server. |
| Ready | QR code + IP | The screen displays from top to bottom: • A large QR code (220px) in a rounded white frame (16px), containing the connection address in the format emberread://IP:PORT.• The IP:port address in monospace font within a frame with a WiFi icon (📶) and a golden border (e.g. “192.168.1.42:8080”). • “X book(s) available” (grey text). • 3 numbered instruction lines (circles 1, 2, 3) explaining the procedure for the other device. • “Waiting for connection...” with a spinner. |
| Transfer in progress | Sync icon + text | Golden 🔄 sync icon + “Transfer in progress...” + “A device is downloading your books”. |
| Error | Error icon + message | ⚠️ error icon + error message + “Retry” button. |
| Element | Details |
|---|---|
| Spinner + text | “Searching...” (golden, 15px, bold) with a spinning loader. The app uses mDNS to discover Ember Read servers on the local network. |
| Status | “No device found yet” while nothing is detected. Changes to “X device(s) found” when a server responds. |
| Device tile | For each detected device: • On the left: 📱 phone icon in a rounded golden frame. • In the center: device name (15px, semi-bold) + “X book(s) available” (12px, grey). • On the right: “>” arrow. Tap the tile to connect to that device. |
A horizontal line with the text “or” in the center separates the two zones.
| Element | Details |
|---|---|
| QR button | Golden outline button with 📷 QR scanner icon and text “Scan the QR code”. Full width. |
| Camera modal | Pressing the button opens a panel covering 70% of the screen from the bottom. It contains: • Handle (horizontal bar 40×4px, grey, centered) for drag-to-close. • Text: “Scan the QR code displayed on the other device”. • Camera view with automatic detection. As soon as a valid QR code (private IP address) is detected, the connection is established and the panel closes. |
If the connection fails, a red banner appears with the error message and a refresh icon (🔄) to retry.
After connecting to the source device, the “Selection” screen displays the list of available books:
| Element | Position | Details |
|---|---|---|
| App bar | Top | Title “Selection”. |
| Header | Below the bar | “X book(s) available” on the left. On the right: “Select all” link (or “Deselect all” if everything is checked). |
| Book tile | Scrollable list | For each book: • Checkbox (24×24px): grey outline (unchecked) or golden fill with white checkmark ✓ (checked). Tap to check/uncheck. • Title (15px, semi-bold). • Author (12px, grey). • File size (12px, grey): automatically formatted in B, KB, or MB depending on size. |
| Download button | Bottom | Solid golden button: ⬇️ download icon + “Download (X)” (black text). Disabled if no books are selected. |
After tapping Download, the bar title changes to “Transfer” and the screen shows the progress:
| Element | Position | Details |
|---|---|---|
| Progress header | Centered at top | Golden 🔄 sync icon (40px) + counter “X/Y” (24px, bold) + “books transferred” (13px, grey). If there are failures: “X failure(s)” in red. |
| Per-book tile | List | For each book being transferred: • Status icon: golden ⬇️ (in progress) / green ✅ (completed) / red ❌ (failed). • Title (14px). • Progress bar (4px, golden) below the title, or “Failed” text (11px, red) if error. • Percentage (13px) on the right. |
| Cancel button | Bottom | “Cancel” (red text). Interrupts the transfer — books already received are kept. |
When the transfer finishes:
| Element | Details |
|---|---|
| Success icon | Large green checkmark ✅ (56px) in a light green circle. |
| Counter | “X book(s) imported” (20px, bold). |
| Failures | If some books failed: “X book(s) failed” (red text). |
| Message | “Your books are now in your library”. |
| Return button | “Back to library” (solid golden button). |
In case of a critical error (WiFi disconnection, server stopped): ⚠️ error icon (48px) + message + “Back” button.
| Data | Transferred? |
|---|---|
| EPUB / .eread files | ✅ Yes |
| Bookmarks | ✅ Yes |
| Annotations (highlights + notes) | ✅ Yes |
| Reading progress | ✅ Yes |
| Analysis data (heatmap) | ✅ Yes (if already analyzed) |
| Reading statistics | ❌ No (synced via the cloud) |
| App settings | ❌ No |
Ember Read's analysis engine already detects the emotional context of each passage. Soundscapes will go further by also identifying the setting and atmosphere described in the text:
| Soundscape | Sounds |
|---|---|
| 🏖️ Beach | Waves, sea breeze, seagulls |
| 🌲 Forest | Birds, rustling foliage, stream |
| 🏙️ City | Urban hum, light traffic |
| 📚 Library | Turning pages, whispers, clock |
| 🛏️ Bedroom | Hushed silence, creaking, fabric |
| 💼 Office | Keyboard, ventilation, calm ambiance |
| 🌻 Garden | Insects, gentle breeze, wind chimes |
| 🪨 Cave | Water drops, echoes, resonance |
| 🌧️ Rain | Rain on windows, distant thunder |
| 🌙 Night | Crickets, owls, nighttime silence |
Transitions between soundscapes will use a crossfade effect — one sound gradually blends into the next for a seamless, natural immersion. No abrupt cuts.
Soundscapes will be accessible via the “Sound” chip (headphone icon) in the secondary panel of the reader's bottom bar. Activating TTS will automatically pause the soundscape.
Your library is automatically synchronized:
Synchronization is triggered automatically when you close a book, when the app goes to the background, or when you add/remove a bookmark.
Demo mode (also called PhoneVibrator) uses your phone's built-in vibrator instead of a Bluetooth toy. It's perfect for trying out immersion mode without a toy.
| Permission | Why | Required? |
|---|---|---|
| Bluetooth | To connect and control vibrating toys | No (but immersion mode won't work without it) |
| Location | Required by iOS for Bluetooth Low Energy scanning. Ember Read does not collect your location. | Yes on iOS for Bluetooth |
| Microphone | Only for audio mode (ambient sound analysis to synchronize vibrations) | No (audio mode is optional) |
| Camera | Only for P2P Transfer (QR code scanning) | No (you can enter the IP manually) |
| Files | To import EPUB files from your phone | Yes (otherwise you cannot import books) |
If your issue is not resolved by the solutions above:
Social Reading
Accessing Social Reading
Open a book in the reader, then access Social Reading from the menu. The “Social Reading” screen appears with the book title at the top, and two cards below:
Active club list
Below the “Book Club” card, the “My clubs” section lists your clubs. Each club is displayed as a tile:
Tap a club to open its detail screen.
Book Club — Create a club
Book Club — Join a club
Book Club — Detail screen
When you create or open a club, the detail screen displays:
Pull down to refresh positions (pull-to-refresh).
Progress cursors
On the progress bar, each participant is represented by a small colored circle (12px) positioned according to their percentage of progress through the book:
Participant tile
Each club member is displayed in the list with:
Leave a club
Live Reading — Create a session
Live Reading — Join
Session bar in the reader
When a Live session is active, a compact bar (32px tall) appears at the top of the reader:
Presence overlay (Book Club)
When you are reading a book for which you have an active book club, a presence panel appears on the right edge of the reader. It displays the other members’ positions in real time.
Collapsed state (default)
A narrow strip (36px) attached to the right edge of the screen, with rounded corners on the left:
Tap the strip to expand the panel.
Expanded state
The panel widens to 185px with a slight shadow:
• Mini avatar (18px) on the left
• Name (11px) + current chapter (9px, grey) in the center. Your name appears as “Me” in golden bold.
• On the right: percentage in golden (12px, bold) + difference relative to your position (e.g. “+12%” in green if ahead, “-8%” in orange if behind, “=” in grey if at the same spot).
Tap on the panel to collapse it.
Position updates