Skip to content

Commit 68fa328

Browse files
committed
Update README.md
1 parent 23d7fae commit 68fa328

File tree

1 file changed

+46
-36
lines changed

1 file changed

+46
-36
lines changed

README.md

Lines changed: 46 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,47 @@
11
# OpenReader WebUI
22

3-
OpenReader WebUI is a modern, user-friendly web interface for reading and analyzing PDF documents. Built with Next.js and React, it provides an intuitive interface for document viewing, analysis, and interaction. The application features drop-in support for any OpenAI-compatible Text-to-Speech (TTS) API, making it highly flexible for various voice synthesis implementations.
3+
OpenReader WebUI is a web-based PDF reader with integrated Text-to-Speech capabilities. It provides a clean interface for reading PDF documents while offering synchronized text-to-speech playback using OpenAI's TTS API.
44

55
## Demo
66

7-
87
https://github.com/user-attachments/assets/7a3457ba-feda-4939-928a-cb587b1c0884
98

10-
119
## Features
1210

13-
- PDF document viewing and navigation
14-
- Interactive document interface
15-
- Modern UI with Tailwind CSS
16-
- Fast performance with Next.js and Turbopack
17-
- PDF text analysis capabilities
18-
- Drop-in support for OpenAI-compatible TTS APIs
19-
- Responsive design for various screen sizes
11+
- **PDF Document Management**
12+
- Local document storage using IndexedDB
13+
- PDF text extraction and rendering
14+
15+
- **Text-to-Speech Integration**
16+
- Real-time text-to-speech using OpenAI's TTS API, Kokoro TTS API, or anything else that follows the OpenAI API format
17+
- Synchronized text highlighting
18+
- Configurable playback speed
19+
- Multiple voice options
20+
- Click-to-read functionality
21+
22+
- **User Interface**
23+
- Light/Dark/System theme support
24+
- Responsive design
25+
- Configurable API settings
26+
- Interactive PDF text selection
2027

2128
## Tech Stack
2229

23-
- **Framework**: [Next.js 15](https://nextjs.org/)
24-
- **UI Library**: [React 19](https://react.dev/)
25-
- **Styling**: [Tailwind CSS](https://tailwindcss.com/)
26-
- **PDF Processing**: [React-PDF](https://react-pdf.org/) and [PDF.js](https://mozilla.github.io/pdf.js/)
27-
- **UI Components**: [Headless UI](https://headlessui.com/)
28-
- **Type Safety**: [TypeScript](https://www.typescriptlang.org/)
30+
- **Framework**: Next.js with React
31+
- **Storage**: IndexedDB for document storage
32+
- **PDF Processing**:
33+
- react-pdf for rendering
34+
- pdf.js for text extraction
35+
- compromise for text analysis
36+
- **UI Components**:
37+
- Headless UI for modals and dropdowns
38+
- Tailwind CSS for styling
39+
- **TTS Integration**: OpenAI TTS API
2940

30-
## Prerequisites
41+
## Installation
3142

32-
- Node.js 18.x or higher
33-
- npm or yarn package manager
43+
> You will need `node` and `npm` installed on your machine. If you don't have it, I recommend installing it using [nvm](https://github.com/nvm-sh/nvm).
3444
35-
## Getting Started
3645

3746
1. Clone the repository:
3847
```bash
@@ -49,13 +58,11 @@ npm install
4958
```bash
5059
cp .env.template .env
5160
```
52-
Edit the `.env` file with your configuration settings.
61+
> Edit the `.env` file with your configuration settings.
5362
5463
4. Start the development server:
5564
```bash
5665
npm run dev
57-
# or
58-
yarn dev
5966
```
6067

6168
The application will be available at [http://localhost:3000](http://localhost:3000).
@@ -70,24 +77,27 @@ The application will be available at [http://localhost:3000](http://localhost:30
7077
## Project Structure
7178

7279
```
73-
openreader-webui/
74-
├── src/
75-
│ ├── app/ # Next.js app router pages
76-
│ ├── components/ # Reusable React components
77-
│ ├── contexts/ # React context providers
78-
│ └── services/ # Business logic and services
79-
├── public/ # Static assets
80-
└── scripts/ # Utility scripts
80+
src/
81+
├── app/ # Next.js app router
82+
├── components/ # UI components
83+
├── contexts/ # Contexts for state management
84+
└── services/ # Utility functions
8185
```
8286

83-
## Contributing
87+
## Browser Support
8488

85-
Contributions are welcome! Please feel free to submit a Pull Request.
89+
The application requires modern browser features:
90+
- IndexedDB for document storage
91+
- PDF.js for document rendering
8692

8793
## License
8894

89-
This project is licensed under the terms of the license included in the repository.
95+
MIT License
96+
97+
## Acknowledgements
9098

91-
---
99+
- [react-pdf](https://github.com/wojtekmaj/react-pdf) for the PDF rendering library.
100+
- [Kokoro-82M](https://huggingface.co/hexgrad/Kokoro-82M) text-to-speech model
101+
- [Kokoro-FastAPI](https://github.com/remsky/Kokoro-FastAPI/tree/master) for the text-to-speech api wrapper.
92102

93-
Built with ❤️ using [Next.js](https://nextjs.org/)
103+
Thank you ❤️

0 commit comments

Comments
 (0)