Changelog
All notable changes to Scroll+ will be documented on this page.
0.17.16
October 3, 2026
0.17.16
October 3, 2026One shelf per Google account, contents at the top of the reader, and sign-in problems that reach us.
Added
- A Shelf per Account - Books, highlights, quotes and reading stats stay with the Google account that added them; signing in with another account shows its own shelf
- Sign-in Problem Reports - If Google sign-in stops, the app tells us which step failed (anonymously) and adds it to the Report a problem e-mail
Changed
- Contents Button - Moved to the top of the reader, next to the back arrow
- Scroll Lens for Scanned Books - Fewer OCR errors, sentences split by a page joined, printed contents pages removed, footnotes linked more reliably
Fixed
- Crash Reports - Native crash reports now include where the app stopped and the version that crashed
0.17.15
October 3, 2026
0.17.15
October 3, 2026Report a problem in one tap, anonymous crash reports and safer EPUB reading.
Added
- Report a Problem - In Settings and under the sign-in button: opens your e-mail app with device details filled in
- Crash Reports - If the app closes unexpectedly, a short anonymous report reaches us on the next launch
Changed
- Ads - Full-screen ads at most every three minutes; a monthly ad-free option next to the one-time purchase
Fixed
- EPUB Security - Book content is cleaned offline before display; unsafe links are refused
0.17.14
October 3, 2026
0.17.14
October 3, 2026Startup crash fix.
Fixed
- Startup Crash - Fixed a crash that could close the app while it loaded membership details (seen on Android 14 and 16)
0.17.13
October 3, 2026
0.17.13
October 3, 2026Scroll Lens: try server PDF reading for free.
Added
- Scroll Lens Free Uses - Two free Scroll Lens books per account and device, with a short welcome
- Phone vs Scroll Lens - A comparison on Home showing a real table and formula as each one reads them
0.17.12
October 3, 2026
0.17.12
October 3, 2026Server PDFs with real tables, sharp formulas and two reading layouts.
Added
- Real Tables - Tables from server PDFs scroll sideways with the first column fixed
- Sharp Formulas - Formulas stay vector-clean at any zoom
- Document or Book - Choose an article layout or a book layout for each PDF
Changed
- Background Upload - A PDF keeps uploading while you use other apps
0.17.9
October 1, 2026
0.17.9
October 1, 2026Scroll Pixel font, chat topic rooms and first-run fixes.
Added
- Scroll Pixel Font - A downloadable reading font with Plain and Fable styles
- Chat Topic Rooms - Topic rooms, quotes shared as book cards and an opt-in "reading now" line
Changed
- Chat Layout - A familiar messenger layout in the pixel-art style
- PDF Queue - Waiting books are shown with a cancel button
Fixed
- First Run and Reading - Add-a-book comes first, cover pages show, multi-line selection works
0.17.6
September 29, 2026
0.17.6
September 29, 2026In-app updates and steadier PDF uploads.
Added
- In-app Updates - New versions can be installed from inside the app via Google Play
- Instagram - A link to @scroll__plus in Settings
Changed
- PDF Uploads - Run as an Android system job, with no time limit for large books and a cancel button
- Themes - PDF illustrations follow the reading theme; leaderboard numbers follow the app language
0.17.0
September 28, 2026
0.17.0
September 28, 2026Reading Fire: read together every evening, plus a new chat look and book renaming.
Added
- Reading Fire - Every evening at 21:00 (Turkey time), read your own book together with other readers for 20 minutes; finishing earns 5,000 Ink
- Reading Fire Reminder - A reminder before the session, with a switch in Settings
- Rename Books - Change a book's name from the library
Changed
- Chat - New bubble layout and room chips; notifications are on by default
Fixed
- Small Fixes - Clearer small states across the app
0.16.2
September 24, 2026
0.16.2
September 24, 2026App usage time is now recorded per session to help investigate errors and Nova activity.
Added
- Per-Session Usage Records - Time spent in the app is recorded for each opening; records made offline sync when a connection is available
Changed
- Privacy Policy - Updated to describe the new usage records
0.16.1
September 23, 2026
0.16.1
September 23, 2026Nova reviews and update checks.
Added
- Reading Activity Summaries - Nova scoring can now be reviewed with reading activity summaries
- Update Check - The app tells you when an update is required
0.16.0
September 22, 2026
0.16.0
September 22, 2026Better server PDF books and clearer plans.
Added
- Live Processing Progress - See page progress while a PDF is processed on the server
Changed
- Server PDF Layout - Headings, paragraphs and footnotes come out cleaner
- Clearer Plans - One-time ad-free access and monthly/yearly memberships now list their benefits separately
Fixed
- Purchase Restore - Restoring purchases is more reliable, and active members no longer see ad-free offers
0.15.1
September 20, 2026
0.15.1
September 20, 2026Ink purchase fix.
Fixed
- Ink Purchase Crash - Fixed a crash after an Ink purchase; completed purchases return to the game and refresh your Ink balance
0.15.0
September 19, 2026
0.15.0
September 19, 2026Ink arrives for Word Duel, and chat opens rooms for every app language.
Added
- Ink - A balance separate from Nova; every account receives a one-time gift of 10,000 Ink
- Chat Rooms - A General room plus a room for each of the 15 app languages; use the bell to manage notifications
Changed
- Letter Hints - Reveal a letter for 500 Ink; Ink a human opponent spends on letters in a match goes to the winner. Nova earning is unchanged
- Word Duel Interface - Available in 15 languages; questions remain in English, Turkish and Russian
Removed
- Rewarded Letter Hints - Letter hints no longer come from rewarded ads
0.13.1
September 18, 2026
0.13.1
September 18, 2026Word Duel moves to the home screen: jump into a duel with one tap, enjoy smarter letter hints, and read without the tab bar getting in the way.
Added
- Word Duel Home Banner - A launch banner at the top of the library opens the game in one tap
- Smarter Letter Hints - Reveal several letters per word (one always stays hidden), use up to 20 letters per match, and get 5 letters per rewarded ad
Fixed
- Cleaner Reading View - Tapping the page now hides the bottom tab bar together with the other controls
- Library Overlay Fix - The tab bar no longer stays over a book opened from the library
0.13.0
September 17, 2026
0.13.0
September 17, 2026Word Duel arrives: 1v1 word races in Turkish, English and Russian, with pixel Loomy, separate sound and music controls, and polished quote sharing.
Added
- Word Duel 1v1 - Race opponents word by word in Turkish, English or Russian; a clearly labeled bot joins when no player is found in 20 seconds
- Pixel Loomy & Audio Controls - The duel room ships with pixel-art styling plus separate controls for short sound effects and soft music
Changed
- Quotes & Gallery - Saving quotes to your collection and gallery, sharing, and the pixel UI received a polish pass
0.12.3
September 13, 2026
0.12.3
September 13, 2026Small reliability fixes for chat and profiles.
Fixed
- Chat Composer Spacing - Removed the extra space below the chat composer after dismissing the Android keyboard
- Clearer Nickname Errors - Reserved-name errors are now explained clearly in all 15 supported languages
0.12.2
September 13, 2026
0.12.2
September 13, 2026Chat and statistics refinements.
Changed
- Notification Preferences - Chat notification preferences now survive app restarts and registration renewals
- Max-Level Loomy - Level 100 Loomy gets a clearer face and simpler appearance
Fixed
- Weekly Chart Switching - The weekly Nova line chart now renders correctly when switching from bars
0.12.1
September 13, 2026
0.12.1
September 13, 2026Navigation fixes and shared-chat extras.
Changed
- Chat Extras - Chat Nova profiles, replies, unread-message navigation, and optional chat notifications
Fixed
- Android Back Button - The system Back button and tab history now behave predictably
- Reading Settings Entry - A clearly labeled Reading Settings entry in the reader menu
0.12.0
September 10, 2026
0.12.0
September 10, 2026Shared chat comes to Scroll+ along with a one-time sign-in that keeps your books and notes safely on your device.
Added
- Shared Chat - Signed-in readers talk in one shared room with their Scroll nickname and Loomy character; the latest 100 visible messages stay available
- Chat Safety - Community rules before the first message, a 500-character limit, plus reporting and blocking
Changed
- Sign-In Required - One Google sign-in unlocks the app; your stored books and notes remain on your device
- Offline Reading - Readers who signed in before can keep reading through temporary connection failures
- Three-Tab Navigation - Library, Chat and Character are now the three main tabs
0.11.0
September 10, 2026
0.11.0
September 10, 2026The Pocket Library redesign lands, with a smarter PDF import that lets you choose exactly how your books are converted.
Added
- PDF Import Choices - Pick between text with images, text only, or the original PDF; extracted images are stored locally and open at a larger size
Changed
- Pocket Library Layout - Refreshed Library, Character, reader controls and shared screens with the approved new design
- Better PDF Selection - Improved text selection while keeping your existing book annotations intact
0.10.5
September 5, 2026
0.10.5
September 5, 2026The warm pixel-art refresh: a new look across the app, separate Library and Character navigation, side-by-side rankings, and persistent bookmarks.
Changed
- Pixel-Art Interface - A refreshed warm pixel-art look across the app
- Library & Character Tabs - Clearer navigation between your library and your character
- Side-by-Side Rankings - Weekly and all-time leaderboards next to each other
- Persistent Bookmarks - Bookmarks stay exactly where you left them
Fixed
- Notes & Quotes - Improvements to notes, quote editing, and reader navigation
0.10.4
August 31, 2026
0.10.4
August 31, 2026A reliability and security release: safer book handling, exact reading positions, longer-lived sign-ins, and faster Nova syncing.
Changed
- EPUB Content Isolation - Crafted book files can no longer run code inside the reader; untrusted EPUB content is sanitized first
- PDF & pdf.js Hardening - Closed PDF injection points and the pdf.js eval issue (CVE-2024-4367)
- Shorter Token Lifetime - Access tokens now live 24 hours while 90-day refresh sessions keep you signed in
Fixed
- Exact Reading Positions - Books reopen exactly where you left them, chapter by chapter
- Instant PDF Settings - Font size, theme and margins apply without reloading or losing your place
- Fewer Sign-Outs - Older app versions are no longer signed out every seven days (server-side fix, benefits every install immediately)
- Faster Nova Sync - Up to eight pending Nova packets sync per transition; failed wheel claims no longer lock the wheel for 24 hours
- Account Switching - Signing out clears pending Nova, so one account's reading never lands in another's totals
0.10.3
August 1, 2026
0.10.3
August 1, 2026Android 16 readiness, plus fixes for reading Nova that never reached the server.
Changed
- Android 16 Support - The app now targets API level 36, meeting Google Play's requirement for updates submitted from August 31, 2026
Fixed
- Legacy Nova Queue - Pending reading Nova from older versions syncs again instead of blocking the queue
- Nova Loss on Tab Switch - Leaving the reader via Profile or Settings now saves the active session's Nova
- Background Sessions - Reading is persisted before the app goes to the background and resumes as a fresh session on return
0.10.2
July 28, 2026
0.10.2
July 28, 2026Sign-in made robust: rotating secure sessions, encrypted device storage, and the end of the Google sign-in network failure.
Changed
- Rotating Refresh Sessions - 90-day opaque refresh tokens, stored only as SHA-256 hashes and rotated on every use
- Encrypted Device Storage - Tokens live in Android Keystore through SecureStore
- No Static Certificate Pins - Certificate rotations no longer break API requests; release builds stay HTTPS-only
Fixed
- Google Sign-In Restored - Fixed the "Network request failed" error caused by the July certificate change
- Weekly Leaderboard Freshness - The weekly table refreshes immediately after accepted Nova
- Offline Nova Protection - Connection failures no longer delete your pending local Nova
0.10.1
July 20, 2026
0.10.1
July 20, 2026Nova fairness: reading time and Nova now use the same verified active-reading clock.
Changed
- Unified Active Reading Time - Reading goals and Nova use the same clamped active-reading duration
- Fairer Activity Window - Normal pauses between pages no longer stop Nova tracking after 30 seconds
Fixed
- Short Sessions Kept - Sub-minute reading is preserved and credited together with later activity
- No Double Nova - Stable request IDs make sync retries safe without awarding Nova twice
0.10.0
July 19, 2026
0.10.0
July 19, 2026Import up to 20 books in one pass, a truthful weekly Nova chart, and a lighter bottom bar.
Added
- Multi-Book Import - Mixed PDF and EPUB selections of up to 20 books in one pass, processed sequentially
- Weekly Nova Trend - A dated seven-day chart with previous-week comparison, in line or bar view
Changed
- Compact Bottom Navigation - A smaller floating bar with comfortable touch targets
- Landscape Reading - Rotate freely while reading, with edge-to-edge rendering on Android 15
Fixed
- Reliable Batch Import - Every book in the batch is processed, and identically named files can no longer overwrite each other
0.9.0
July 4, 2026
0.9.0
July 4, 2026Smarter PDF reading: batch extraction, scanned-PDF detection with automatic Academic Mode fallback, and higher extraction accuracy across languages.
Added
- Batch PDF Extraction - Select multiple PDFs and extract them in one action; they queue up and process one after another in the background
- Scanned-PDF Detection - Books with almost no extractable text are automatically switched to Academic (native PDF) mode so they stay readable, with a clear notice
- Retro Notice Modal - A new design-consistent modal replaces native alerts for reading notices, matching the app's retro aesthetic
Changed
- Stale Extraction Recovery - Books stuck in an extracting state after the app is killed now automatically re-enter the extraction queue
- Language-Aware OCR Fixes - English-specific OCR corrections are now skipped for other languages and RTL scripts, preventing text corruption in German, French, Arabic and more
- Crimson Pro Reading Font - The default reading font now renders correctly everywhere instead of falling back to the system font
Fixed
- Rotated Text Size - PDF extraction now derives correct font sizes for rotated and skewed text
- Dense Page Crash - Fixed a crash when extracting extremely dense PDF pages
- Network Timeout Leak - API request timeouts are now always cleaned up, preventing resource leaks on failed connections
0.8.0
June 10, 2026
0.8.0
June 10, 2026Design quality and performance update: SVG-based retro effects, haptic feedback, a smarter weekly chart, and light theme accessibility improvements.
Added
- Haptic Feedback - Tactile responses for button presses, Nova gains, and level-ups
- Logarithmic Weekly Chart - The weekly Nova chart is now an SVG line chart with logarithmic scaling; toggle between line and bar views
Changed
- SVG Retro Effects - Scanline and dither overlays rebuilt as single SVG patterns, replacing hundreds of native views for a much smoother UI
- Light Theme Contrast - Secondary text darkened to meet WCAG AA contrast standards
- Compact Reading HUD - The in-reader menu is narrower and less intrusive
Removed
- Debug Overhead - Removed leftover debug logging from visual components, reducing production overhead
0.7.0
June 2, 2026
0.7.0
June 2, 2026Security hardening and stability update with 9 bug fixes and a more compact reading HUD.
Changed
- Compact HUD Controls - Reading settings sliders redesigned in a compact layout, freeing up screen space while reading
Fixed
- EPUB Content Security - EPUB HTML sanitization rebuilt on DOMPurify, closing injection vectors the previous sanitizer missed
- Spin Wheel Reward Validation - Daily spin rewards are now validated server-side, preventing reward manipulation
- Streak Multiplier Edge Case - The streak multiplier can no longer drop below 1.0x due to floating-point edge cases
- Orphaned Quotes - Deleting a book now also removes its saved quotes
- Network Timeouts - All API requests now time out after 15 seconds instead of loading forever on dead connections
- Login State - Fixed stuck loading spinners after logging out and back in
0.6.0
May 15, 2026
0.6.0
May 15, 2026Performance and security update: faster reading screen rendering, improved certificate security, and smoother leaderboard synchronization.
Changed
- Reading Performance - Optimized the reading screen rendering pipeline for a faster, smoother experience
- Certificate Security - Improved certificate handling for network connections
- Leaderboard Sync - Smoother and more reliable synchronization of rankings and gamification data
- Error Handling - Better error handling and recovery throughout the app
0.4.9
April 27, 2026
0.4.9
April 27, 2026Major stability and data integrity update with 12 bug fixes across storage, gamification, PDF reading, and authentication.
Changed
- Nova Formula Consolidation - All Nova math now lives in a single source of truth, eliminating drift between duplicate implementations
Fixed
- Faster Library Storage - Book storage refactored to per-book records, making single-book updates instant even with large libraries
- Nova Race Condition - Fixed close-together Nova updates overwriting each other
- Avatar Reset Bug - Your selected avatar no longer resets when earning Nova within the same tier
- PDF Position Memory - Academic Mode PDFs now reopen at your last page instead of page 1
- Android SVG Crash - Fixed a crash caused by unsanitized icon path data on Android
- Automatic Session Refresh - Expired sessions now refresh automatically instead of logging you out
- RTL on First Launch - Arabic, Urdu and other RTL languages now display correctly from the very first launch
0.4.8
April 24, 2026
0.4.8
April 24, 2026Critical fix for a daily spin wheel exploit that allowed bypassing the 24-hour cooldown by re-logging in.
Fixed
- Spin Cooldown Bypass - The spin wheel now fails closed while server data is loading, closing the brief post-login window that allowed extra spins
- Clear Cooldown Errors - The server now returns a specific cooldown error with the exact next-spin time, so the app can sync correctly
- Phantom Rewards - Rewards shown for spins rejected by the server are now immediately reverted
0.4.7
March 29, 2026
0.4.7
March 29, 2026Critical fix for Google Sign-In failing on Play Store builds after the Cloudflare migration.
Fixed
- Google Sign-In Failure - Updated certificate pins for the new Cloudflare infrastructure; release builds were silently rejecting all API connections
- Sign-In Error Visibility - Sign-in failures now show a clear error dialog instead of failing silently
0.4.6
March 29, 2026
0.4.6
March 29, 2026Critical fix for PDF text extraction losing words and sentences at page boundaries.
Fixed
- Page Boundary Text Loss - Sentences and words spanning across pages are no longer disconnected during extraction
- Smart Page Joining - Pages ending mid-sentence now join with the next page naturally instead of forcing paragraph breaks
- Hyphenated Words - Words hyphenated at page ends now connect properly to the next page
- Spaced-Letter Text - Fixed legitimate spaced words being incorrectly merged together
- Turkish Characters - Page boundary detection now fully covers Turkish characters
0.4.5
March 23, 2026
0.4.5
March 23, 2026Bug fixes for reading time inflation and spin wheel cooldown bypass.
Fixed
- Reading Time Double-Counting - Fixed daily reading time incorrectly increasing every time the app was reopened. The useLoadProfileData hook was loading sessions from AsyncStorage and dispatching addSession() on every app start, causing sessions to accumulate exponentially. The redundant hook has been removed
- Spin Wheel Cooldown Bypass - Fixed the daily spin wheel allowing re-spin before the 24-hour cooldown expires. Backend claimSpinReward now returns nextSpinAvailableAt in all response paths. The client no longer uses a separate AsyncStorage fallback, relying solely on Redux. The error handler now fails closed instead of failing open
0.4.4
March 22, 2026
0.4.4
March 22, 2026Critical bug fixes for PDF text extraction on physical devices, addressing stuck progress at 99% and empty extraction issues.
Fixed
- PDF Extraction Stuck at 99% - Fixed extraction loop never completing if last page(s) had no content. The hasContent check was skipping the analysis phase, causing headingThreshold to never be set
- Analysis Phase Logic - Moved analysis phase check before hasContent check to ensure headingThreshold is always set at page 15
- Progress Updates - Progress now updates for ALL pages (including blank ones), not just pages with content
- Academic Mode Bypass - Added pdfMode !== "academic" check in handleBookPress to prevent false "text is being prepared" alert
- Scope Error - Fixed "completionSent is not defined" error by moving the variable to global scope
- Debug Logging - Added extraction statistics logging to help diagnose issues on physical devices
0.4.3
March 22, 2026
0.4.3
March 22, 2026Introducing PDF Academic Mode, a brand new reading experience for study and deep reading, alongside UI polishes and Eye Comfort refactoring.
Added
- PDF Academic Mode - A completely new reading engine specifically built for PDFs
- Native Pinch-to-Zoom - Enabled native browser CSS touch-action properties for flawless zooming in Academic PDF Mode
- Multi-Color Highlights - Dynamic multi-color highlights applied via native document.execCommand
- Highlight Deletion - Tap on existing highlights to invoke a deletion dialog
- Minimalist UI - Overhauled the PDF Import Modal into a card-based design with full i18n support
Fixed
- Eye Comfort Rendering - Replaced flat-color overlay with native CSS filters (sepia, contrast, brightness) bound to EYE_COMFORT_CONFIGS, retaining deep blacks in Dark Mode
- Selection Menus - Fixed Y-coordinate miscalculations for text selection when header bar is hidden
- Immersive Mode - Added one-tap global listener to seamlessly hide navigational HUDs
0.4.1
March 19, 2026
0.4.1
March 19, 2026Internal refactoring, version bump, and bug fixes for app initialization and component hooks.
Changed
- App Entry Point - Moved App.tsx from src/App.tsx to root directory, aligned with Expo convention
- App Initialization - Added PersistGate wrapper, apiClient.init() before sync, verifyAppIntegrity() security check in production, and proper cleanup on unmount
- Version - Bumped to 0.4.1 (versionCode 23)
Fixed
- DailySpinWheel Hooks Order - Moved checkSpinAvailability function definition before its usage in useEffect
- SyncService Test Import - Fixed apiClient import to use default export with correct mock structure
0.4.0
March 18, 2026
0.4.0
March 18, 2026Major reading interface redesign with a new floating toolbar HUDMenu, removal of split-screen reader, and core gamification system introduction.
Added
- Floating Toolbar HUDMenu - Complete redesign from bottom-sheet to a compact floating toolbar with 4 icon-based tabs (Typography, Spacing, Layout, Display)
- Core Gamification System - User profiles, reading stats, Nova tracking, and weekly leaderboards
- RetroSlider Compact Mode - New compact prop for smaller track (8px) and thumb (24px)
Changed
- HUDMenu Animation - Replaced slide-up with fade+scale (200ms) for smoother appearance
- HUDMenu Positioning - Now positioned below top bar via topBarHeight prop instead of fixed to bottom
- ReaderScreen - Updated to integrate new HUDMenu with topBarHeight positioning
- i18n - Renamed "level" to "threshold" in Turkish gamification locale
Removed
- Split-Screen Reader - Removed SplitScreenReader component and split mode UI from ReaderTopBar
0.3.0
March 17, 2026
0.3.0
March 17, 2026Critical fix for avatar assignment bug where users were displayed with incorrect high-tier mascots regardless of their actual Nova level.
Fixed
- Avatar Assignment Bug - Fixed getAvatarIdForNova() in both frontend and backend. The thresholds array was sorted in descending order while MASCOT_AVATARS is sorted ascending, causing avatar IDs to map to wrong mascots
- Database Correction - All 39 users' avatarId values were recalculated and corrected
0.2.9
March 16, 2026
0.2.9
March 16, 2026Critical bug fix for avatar persistence across app sessions.
Fixed
- Avatar Display Bug - Fixed an issue where the user's selected avatar would randomly change to an incorrect one on app launch. The updateUserProfile reducer now filters out undefined values from server responses, preventing them from overwriting existing avatar data
0.2.8
March 12, 2026
0.2.8
March 12, 2026Split-screen PDF reading enhancements with sync mode and avatar ID system refinement.
Added
- Split-Screen Sync Mode - New sync toggle button for synchronized scrolling between PDF viewer and extracted text
- Page-to-Scroll Sync - PDF page changes automatically scroll the HTML reader to the corresponding position
Changed
- Avatar ID Logic - Simplified to use sequential index (1-21) instead of Nova threshold values
- Performance - Added React.memo and useCallback for split-screen optimization
Fixed
- Android Rendering - Split mode now uses software layer type for WebView to prevent rendering issues
0.2.7
March 9, 2026
0.2.7
March 9, 2026Floating tab bar improvements with tablet support and avatar ID system refinement.
Changed
- Tablet Support - Floating tab bar adapts to screen size: centered with fixed width (280px) on tablets, full-width with padding on phones
- Reduced Size - Tab bar height reduced from 65px to 50px, icon size from 32px to 24px
- Avatar ID Logic - Reverted to use Nova threshold values for consistent avatar identification across sessions
Fixed
- Avatar Selection - Avatar IDs now correctly use Nova threshold values ensuring avatar persistence after app restart
0.2.6
March 7, 2026
0.2.6
March 7, 2026EPUB reader white flash fix during chapter transitions and React dependency warning resolution.
Fixed
- EPUB Chapter Transitions - Eliminated white flash when navigating between chapters by rendering WebView off-screen until content is ready
- React Warning - Fixed missing dependency in DailySpinWheel useEffect hook
0.2.5
March 6, 2026
0.2.5
March 6, 2026Major reader interface overhaul with immersive reading mode, glassmorphism floating tab bar, deep linking for GDPR compliance, and critical gamification bug fixes.
Added
- Immersive Reading Mode - Tab bar and header auto-hide on scroll, tap to toggle controls, status bar sync
- Glassmorphism Floating Tab Bar - Native blur effects with expo-blur, modern design with rounded corners
- Deep Linking - Account deletion callback for GDPR compliance, auto logout on account deletion
Changed
- Real-Time Streak Multiplier - Nova display includes streak bonuses (1.0x - 2.5x)
- Weekly Goal Bonus - Increased from 500 Nova to 10,000 Nova
- Language Persistence - Saved language preference applied immediately on app launch
Fixed
- Modal Flicker - Level-up modal no longer reappears after dismissal
- Avatar Selection - Avatar IDs now use correct sequential numbers (1-21)
- Double Spin Abuse - Daily spin wheel immediately saves timestamp to prevent multiple spins
- Activity Tracking - Records activity on scroll start for all readers
0.2.4
March 5, 2026
0.2.4
March 5, 2026Critical fix for Nova point calculation logic to prevent runaway scoring.
Fixed
- Interval Leak Fix - Resolved a major bug in GamificationService.ts where multiple timers could accumulate, leading to exponentially high Nova points (e.g., 10k Nova for 2 minutes)
0.2.3
March 5, 2026
0.2.3
March 5, 2026Nova calculation formula redesigned with time-based linear growth. Fixed a critical bug where scrolling incorrectly awarded Nova points.
Changed
- Nova Calculation Redesign - Switched from page-based to time-based calculation: Old formula: (pages × 10) + (minutes × 5) + 20. New formula: Linear growth per minute (10, 20, 30... up to 300 Nova/min at 30 min). After 30 minutes: capped at 300 Nova per minute. Example: 30 min reading = 4,650 Nova (instead of unpredictable values)
Fixed
- Scroll Nova Bug - Fixed incorrect Nova gains when scrolling through pages. Previously, each scroll position change triggered recordPageRead(), causing excessive Nova accumulation
Removed
- Unused xpService.ts - Removed deprecated backend service file that was no longer in use
0.2.2
March 4, 2026
0.2.2
March 4, 2026Focuses on synchronization stability, improved performance, and more accurate gamification tracking.
Added
- Header Sync Button - A minimal, dedicated synchronization button in the header with a retro pixel spin animation
Changed
- Weekly Nova Trend - The chart now pulls accurate daily data from the server, including Nova points earned from the Daily Spin
Fixed
- Immediate Sync - Fixed a potential data loss issue; reading points are now synced immediately upon closing the book
- Background Hydration - Improved Redux persistence to ensure local points are preserved until a successful server sync
- Serialization Fix - Resolved 'Invalid request body' error by adding missing timestamps to synchronization payloads
0.2.1
March 4, 2026
0.2.1
March 4, 2026Includes a fix for a bug related to the Nova gamification system and new UI improvements added to the Settings screen.
Added
- Settings Screen Links - Added direct links to the official website (scroll.pics), Changelog page, and Delete Account page in the app's Settings menu
Fixed
- Nova Sync Bug - Fixed a logic error where Nova points earned by users who left the app open and paused reading were rejected and deleted due to overly strict server-side anti-cheat rules
0.2.0
March 3, 2026
0.2.0
March 3, 2026This release includes RTL language support, gamification enhancements, Android build improvements, and comprehensive security hardening.
Added
- RTL Language Support - Full right-to-left text handling for Arabic, Persian, Urdu, Hebrew, and 6 more RTL languages
- Daily Spin Wheel - 8 wheel segments with Nova rewards (100-5000), Streak Protector, and XP Booster
- Level-Up Modal - New progression notifications with backend sync
- API 35 Targeting - Updated to latest Android SDK with Kotlin 2.0.21
- Security Hardening - 80+ automated security modifications, ProGuard dictionary, certificate pinning
Changed
- EPUBReader loading improvements to prevent white flash
- Updated all dependencies to latest versions
Fixed
- Weekly Champions Widget errors resolved
- Improved reliability for EPUB/PDF imports
0.1.3
February 25, 2026
0.1.3
February 25, 2026Google Play Store preparation with critical bug fixes.
Added
- Expo Secure Store Plugin - Configuration for secure token storage
- Metro bundler improvements for development
Changed
- Version bump: 0.1.2 → 0.1.3
- Release notes condensed from 16KB to ~3KB
Fixed
- Critical regex fix - Resolved stack overflow in PDF processing
- Release signing configuration corrected for Google Play
- Google Web Client ID migrated to config-based management
0.1.2
February 24, 2026
0.1.2
February 24, 2026Major PDF reading improvements with split-screen viewer support.
Added
- Split-Screen PDF Viewer - View original PDF and extracted text side-by-side with scroll sync
- 16-Phase OCR Pipeline - Advanced PDF text extraction with language detection
- Age Verification System - Content gating with welcome modal
- Native PDF rendering with react-native-pdf
- Turkish-specific OCR error corrections
Changed
- Enhanced profile management UI
- Improved Google sign-in flow handling
Fixed
- Multiple PDF text extraction accuracy improvements
- Better handling of complex PDF layouts
0.1.1
February 22, 2026
0.1.1
February 22, 2026Security hardening, responsive design system, and increased file limits.
Added
- Responsive Design System - Breakpoints for phones, tablets with dynamic scaling
- Network security config with certificate pinning
- Multi-resolution splash screen logos
Changed
- PDF file size limit: 25MB → 30MB
- EPUB file size limit: explicit 50MB
- 15+ components updated for responsive behavior
Fixed
- ZIP bomb protection for EPUB imports
- Path traversal protection
- Store listing titles updated to 30-character limit
0.1.0
February 11, 2026
0.1.0
February 11, 2026Initial release with comprehensive e-reader features and retro RPG gamification.
Added
- EPUB Support - Full EPUB 2.0/3.0 parsing with themes, fonts, and eye comfort mode
- PDF Support - Lazy text extraction with markdown conversion
- Gamification System - 21 avatar levels, daily spin wheel, streaks, leaderboards
- Typography Controls - Font selection, size, line height, word spacing
- Quote System - Capture, design, and share quotes from books
- Retro UI - VT323 pixel font, CRT effects, glow animations
- Google OAuth authentication
- Library management with visual book grid
- language support with RTL handling
Version History
| Version | Date | Focus |
|---|---|---|
0.17.16 | 2026-10-03 | Shelf per account, contents at the top, sign-in reports |
0.17.15 | 2026-10-03 | Report a problem, crash reports, safer EPUB |
0.17.14 | 2026-10-03 | Startup crash fix |
0.17.13 | 2026-10-03 | Scroll Lens free uses |
0.17.12 | 2026-10-03 | Real tables, sharp formulas, Document/Book |
0.17.9 | 2026-10-01 | Scroll Pixel font, chat topic rooms |
0.17.6 | 2026-09-29 | In-app updates, steadier PDF uploads |
0.17.0 | 2026-09-28 | Reading Fire, chat redesign, rename books |
0.16.2 | 2026-09-24 | Per-session usage records |
0.16.1 | 2026-09-23 | Nova reviews and update checks |
0.16.0 | 2026-09-22 | Server PDF books, ad-free and membership plans |
0.15.1 | 2026-09-20 | Ink purchase crash fix |
0.15.0 | 2026-09-19 | Ink for Word Duel, chat rooms for 15 languages |
0.13.1 | 2026-09-18 | Word Duel home banner, smarter letter hints, reader tab-bar fix |
0.13.0 | 2026-09-17 | Word Duel 1v1 (TR/EN/RU), pixel Loomy, quote sharing polish |
0.12.3 | 2026-09-13 | Chat composer spacing, clearer nickname errors |
0.12.2 | 2026-09-13 | Notification preferences, weekly chart fix, max-level Loomy |
0.12.1 | 2026-09-13 | Back-button fix, chat replies and notifications |
0.12.0 | 2026-09-10 | Shared chat, required sign-in, offline reading resilience |
0.11.0 | 2026-09-10 | Pocket Library redesign, PDF import choices |
0.10.5 | 2026-09-05 | Warm pixel-art refresh, side-by-side rankings, persistent bookmarks |
0.10.4 | 2026-08-31 | Security hardening (EPUB/PDF), exact reading positions, stable sessions |
0.10.3 | 2026-08-01 | Android 16 (API 36) support, Nova sync fixes |
0.10.2 | 2026-07-28 | Rotating refresh sessions, encrypted token storage, sign-in fixes |
0.10.1 | 2026-07-20 | Unified active reading time, Nova fairness fixes |
0.10.0 | 2026-07-19 | Multi-book import, weekly Nova trend chart, compact navigation |
0.9.0 | 2026-07-04 | Batch PDF extraction, scanned-PDF detection, Academic Mode fallback |
0.8.0 | 2026-06-10 | SVG retro effects, haptic feedback, logarithmic chart, light theme accessibility |
0.7.0 | 2026-06-02 | Security hardening, 9 bug fixes, compact reading HUD |
0.6.0 | 2026-05-15 | Reading performance, certificate security, leaderboard sync |
0.4.9 | 2026-04-27 | Stability and data integrity, 12 bug fixes, faster storage |
0.4.8 | 2026-04-24 | Spin wheel cooldown bypass fix |
0.4.7 | 2026-03-29 | Google Sign-In certificate fix |
0.4.6 | 2026-03-29 | PDF page boundary text loss fix |
0.4.5 | 2026-03-23 | Reading time double-counting fix, spin wheel cooldown fix |
0.4.4 | 2026-03-22 | PDF extraction stuck at 99%, progress tracking, Academic Mode alert fix |
0.4.3 | 2026-03-22 | Academic Mode Zoom, Multi-Color Highlights, Eye Comfort Filter Fixes |
0.4.1 | 2026-03-19 | App entry refactor, PersistGate, hooks order fix, test import fix |
0.4.0 | 2026-03-18 | Floating toolbar HUDMenu, gamification system, split-screen removal |
0.3.0 | 2026-03-17 | Avatar assignment bug fix, database correction |
0.2.9 | 2026-03-16 | Avatar persistence fix across sessions |
0.2.8 | 2026-03-12 | Split-screen sync mode, avatar ID refinement, performance |
0.2.7 | 2026-03-09 | Floating tab bar tablet support, reduced size, avatar ID fix |
0.2.6 | 2026-03-07 | EPUB chapter transitions, React warning fix |
0.2.5 | 2026-03-06 | Immersive mode, glassmorphism UI, deep linking, gamification fixes |
0.2.4 | 2026-03-05 | Interval leak fix, Nova calculation |
0.2.3 | 2026-03-05 | Nova formula redesign, scroll bug fix |
0.2.2 | 2026-03-04 | Sync button, weekly trend fix, hydration stability |
0.2.1 | 2026-03-04 | Settings links, Nova sync fix |
0.2.0 | 2026-03-03 | RTL support, API 35, security hardening |
0.1.3 | 2026-02-25 | Google Play preparation, regex fix |
0.1.2 | 2026-02-24 | Split-screen PDF, 16-phase OCR |
0.1.1 | 2026-02-22 | Responsive system, security |
0.1.0 | 2026-02-11 | Initial release |