Hi DEV.to community! I'm an indie developer from Taiwan, passionate about solving productivity challenges for students and professionals. As someone buried under textbooks and notes, I built FlashRead, a speed reading app designed to help you read faster, retain more, and reduce stress. I'm thrilled to share it with you and offer free lifetime access (normally $9.99) until June 9, 2025. Here's the story behind FlashRead and how it works!
Why I Built FlashRead
As a student in Taiwan, I often struggled with the sheer volume of reading required for Chinese books. Traditional speed reading apps felt clunky or rushed comprehension, so I set out to create something intuitive, privacy-first, and tailored to different reading habits. FlashRead was born to make reading faster and more enjoyable without sacrificing understanding.
Core Features
FlashRead combines a unique interaction model with a clean, customizable experience. Here's what makes it stand out:
Press-to-Read Interaction: Press and hold the screen to speed through text at your desired pace; release to pause and review the last few words. The implementation uses SwiftUI gestures to detect user interactions, ensuring smooth control and reducing cognitive overload.
Stress-Free Reading: Text pacing is optimized based on research into eye movement and reading flow, minimizing strain. I used SwiftUI's animation APIs with Timer publishers to create fluid transitions between words, with advanced timing for different text types.
Multi-language Support: Paste any text (supports English, Chinese, and more) and start reading instantly. FlashRead uses NLTokenizer for proper word segmentation across languages, with special handling for mixed language content.
Beautiful Themes: Choose from a variety of professionally designed themes with dynamic color schemes. The theme system supports both light and dark modes, with premium options available.
Customization: Adjust reading speed (120-1200 WPM), font sizes, and history length to match your preferences. All settings are stored locally via UserDefaults.
Progress Tracking: Built-in stats show your actual reading speed and improvement over time, motivating you to keep going. The app even lets you resume unfinished reading sessions.
Technical Details
FlashRead is built with Swift and SwiftUI for a modern, responsive UI. Here are some key technical aspects:
Reading Engine: The core functionality uses a combination of Timer publishers and SwiftUI state management. Here's a glimpse at the reading control logic:
// Start reading from current position
func startReading() {
readingState.paused = false
readingState.isReading = true
if readingState.wordsRead == 0 {
readingState.readingStartTime = Date()
readingState.totalReadingTime = 0
}
scheduleNextUnit()
}
// Pause reading
func pauseReading() {
readingState.paused = true
readingState.pauseStartTime = Date()
// Update total reading time
let activeReadingTime = Date().timeIntervalSince(readingState.readingStartTime)
readingState.totalReadingTime += activeReadingTime
updateHistoryText()
timer?.cancel()
}
Text Processing: The app intelligently processes text based on language detected, chunking content differently for English vs Chinese characters. Natural Language framework helps with proper tokenization.
Dynamic Theming: A sophisticated theme system with multiple predefined themes and custom options, supporting both dark and light modes with smooth transitions.
Privacy-First: FlashRead works 100% offline, with all reading data stored locally on your device. There's no tracking or data collection.
Persistent Sessions: Reading progress is saved automatically, allowing you to resume exactly where you left off.
Who It's For
FlashRead is perfect for:
Students preparing for exams with heavy reading loads.
Professionals who need to skim reports, emails, or technical docs quickly.
Book Lovers eager to clear their reading lists without losing comprehension.
Language learners practicing reading fluency in different languages.
Try It Out
App Store: https://apps.apple.com/app/id6745725776
Price: Free lifetime access (normally $9.99) until June 9, 2025
Platform: iOS
In-App Purchases: None โ this promo unlocks full access
Let's Talk!
I'd love to hear your feedback! How's the press-to-read feature working for you? Any features you'd like to see added? Drop a comment below or DM me โ I'll be reading every response. ๐
Also, what's your go-to trick for staying focused or reading faster? As a developer, what features would you prioritize in a reading app?
Top comments (1)
Overview: FlashRead is a speed reading app created to enhance reading efficiency and understanding while providing an enjoyable experience for students and professionals.
Background
Why FlashRead was Created
Core Features of FlashRead
Technical Details
Target Audience
Call to Action
made with love by axrisi
