Transform text into natural speech with enterprise-grade controls and real-time word highlighting. Built for accessibility, education, and professional content creation.
| Feature | Description |
|---|---|
| Real-time Word Highlighting | Watch words light up as they're spoken |
| Full Playback Control | Play, Pause, Resume, Stop with intuitive controls |
| Adjustable Speed | Customize reading pace from 0.5x to 3x |
| Voice Selection | Choose from multiple male and female voices |
| File Upload | Support for TXT and PDF documents (drag & drop) |
| Click-to-Read | Click any word to start reading from that position |
| Responsive Design | Seamless experience across desktop, tablet, and mobile |
| Secure Authentication | Simple login with name, email, and phone validation |
| Real-time Analytics | Word count, character count, and estimated reading time |
| Activity Log | Track all your actions in real-time |
| Technology | Purpose |
|---|---|
| HTML5 | Semantic structure and markup |
| CSS3 | Modern styling with glass morphism and responsive grid |
| JavaScript (ES6+) | Core functionality and speech synthesis |
| Web Speech API | Text-to-speech conversion |
| PDF.js | PDF text extraction and parsing |
| Google Fonts | Inter font family for clean typography |
LEXIO/ ├── index.html # Main entry point ├── styles.css # Core styles and layout ├── script.js # Main application logic ├── assets/ # Static assets │ ├── favicon.ico # Browser tab icon │ ├── logo.svg # Application logo │ ├── fonts/ # Custom fonts (optional) │ └── icons/ # UI icons (optional) ├── css/ # Additional styles │ └── components.css # Reusable component styles ├── js/ # JavaScript modules │ ├── auth.js # Authentication logic │ ├── speech.js # Speech synthesis engine │ ├── fileHandler.js # File upload and processing │ └── utils.js # Utility functions ├── docs/ # Documentation │ ├── API.md # API reference │ ├── CONTRIBUTING.md # Contribution guidelines │ └── CHANGELOG.md # Version history └── .github/ # GitHub configuration ├── workflows/ # GitHub Actions │ └── deploy.yml # Auto-deployment workflow ├── FUNDING.yml # Sponsor configuration └── PULL_REQUEST_TEMPLATE.md
- A modern web browser (Chrome, Firefox, Safari, Edge)
- Local server (optional, recommended for PDF support)
git clone https://github.com/liambrooks-lab/LEXIO.git
cd LEXIO
open index.html
- Install Live Server extension
- Right-click index.html
- Select "Open with Live Server"
- Visit http://localhost:5500
| Metric | Value |
|---|---|
| First Contentful Paint | < 1.5s |
| Time to Interactive | < 3s |
| Lighthouse Score | 95+ |
| Bundle Size | < 500KB |
| Browser Support | Chrome 33+, Firefox 49+, Safari 7+, Edge 14+ |
We welcome contributions! Please see our Contributing Guidelines for details.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit changes (
git commit -m 'Add amazing feature') - Push to branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Rudranarayan Jena
- GitHub: @liambrooks-lab
- Project: LEXIO
- Live Demo: View Live Demo
- Web Speech API Team - For enabling browser-based speech synthesis
- PDF.js Contributors - For robust PDF text extraction
- Google Fonts - For the Inter font family
- All Contributors - For testing, feedback, and support
- Issues: Report a bug
- Discussions: Start a discussion
If you find this project useful, please consider giving it a star on GitHub! It helps more people discover the tool.