A modern, web-based EPUB reader built with React. Features a clean interface, dark/light themes, full-text search, and distraction-free reading mode.
GitHub Description: Web-based EPUB reader with search, themes, and distraction-free mode
- 📚 EPUB File Support - Upload and read EPUB files directly in your browser
- 🔍 Full-Text Search - Search across all chapters with highlighted results
- 🌓 Dark/Light Mode - Toggle between themes for comfortable reading
- 📖 Reading Modes - Switch between normal and distraction-free fullscreen mode
- ⌨️ Keyboard Navigation - Use arrow keys to navigate between chapters
- 📱 Responsive Design - Works seamlessly on desktop and mobile devices
- 🎨 Modern UI - Clean interface with smooth animations and gradients
- Clone the repository:
git clone https://github.com/Paulius11/simple-epub-reader.git
cd simple-epub-reader- Install dependencies:
npm install- Start the development server:
npm startnpm run deploy- Make your changes
- Commit and push to main branch:
git add .
git commit -m "Your update message"
git push- Deploy the updates:
npm run deployThe site will update automatically at https://paulius11.github.io/simple-epub-reader
- React 19
- Lucide React (icons)
- JSZip (EPUB parsing)
- CSS Custom Properties (theming)
- GitHub Pages (hosting)
- Click "Choose EPUB File" to upload an EPUB book
- Navigate chapters using:
- Previous/Next buttons
- Chapter dropdown selector
- Arrow keys (← →)
- Click on left/right edges in reading mode
- Search for text using the search bar
- Toggle between light/dark themes
- Enter reading mode for distraction-free experience
Contributions are welcome! Feel free to:
- Report bugs
- Suggest new features
- Submit pull requests
This project is open source and available under the MIT License.
Paulius11
- GitHub: @Paulius11
⭐ If you find this project useful, please consider giving it a star on GitHub!