Skip to content

πŸš€ AI-Powered Reading Assistant: Transform your digital reading with intelligent note-taking, highlighting, goal tracking, and multi-language support. Built with Next.js 14, TypeScript, and modern AI technologies for enhanced learning and productivity.

Notifications You must be signed in to change notification settings

aezizhu/ai-reading-assistant

Repository files navigation

πŸš€ AI Reading Assistant

Author: aezizhu | Repository: https://github.com/aezizhu/ai-reading-assistant

An intelligent, feature-rich reading companion that transforms how you interact with digital books. Built with cutting-edge web technologies and designed for the modern reader.

Next.js TypeScript Tailwind CSS License: Non-Commercial

🌟 Why AI Reading Assistant?

Transform your reading experience with an application that doesn't just store your booksβ€”it understands them. Whether you're a student, researcher, or avid reader, our AI-powered platform provides the tools you need to read smarter, not harder.

✨ Key Highlights

  • 🧠 AI-Powered Insights: Get intelligent summaries, mind maps, and reading recommendations
  • πŸ“š Universal Format Support: PDF, EPUB, MOBI - all in one place
  • 🎯 Smart Goal Tracking: Set and achieve your reading objectives with precision
  • 🌍 Multi-Language Ready: English, Chinese, Spanish with seamless switching
  • πŸ”’ Privacy-First: 100% local storage, zero cloud dependencies
  • 🎨 Beautiful Interface: Modern, responsive design that adapts to any device

πŸš€ Features Deep Dive

πŸ“– Advanced Reading Experience

  • Immersive PDF Reader: Native PDF rendering with zoom, rotation, and smooth navigation
  • Smart Highlighting: Multiple colors with contextual notes and easy organization
  • Intelligent Notes: Categorized note-taking with automatic linking to book content
  • Session Tracking: Monitor reading time, maintain streaks, and build reading habits

πŸ€– AI Reading Companion

  • Interactive Q&A: Ask questions about specific chapters or concepts
  • Auto-Summarization: Get AI-generated chapter summaries and key points
  • Mind Map Generation: Visual concept mapping for better understanding
  • Personalized Recommendations: Discover your next great read based on your preferences

πŸ“Š Analytics & Insights

  • Reading Dashboard: Beautiful charts showing your reading patterns and progress
  • Goal Management: Set daily targets, track completion rates, and celebrate achievements
  • Export Capabilities: Download your notes, highlights, and reading statistics
  • Progress Visualization: See your reading journey with intuitive graphs and metrics

🌐 Multi-Language Excellence

  • Complete Internationalization: Every text element translated and localized
  • Dynamic Language Switching: Change languages instantly without page reload
  • Cultural Adaptation: Date formats, number systems, and reading directions respected

πŸ› οΈ Technology Excellence

Core Technologies

  • Next.js 14 with App Router - Server-side rendering and optimal performance
  • TypeScript - Type-safe development with excellent IDE support
  • Tailwind CSS - Utility-first styling with custom design system
  • Zustand - Lightweight, powerful state management with persistence

Advanced Libraries

  • react-pdf + PDF.js - Industry-standard PDF rendering and manipulation
  • Framer Motion - Smooth, professional animations and transitions
  • Recharts - Beautiful, responsive data visualization
  • date-fns - Comprehensive date handling with internationalization

πŸ“ Project Architecture

ai-reading-assistant/
β”œβ”€β”€ 🎨 app/                     # Next.js App Router
β”‚   β”œβ”€β”€ globals.css             # Global styles & design system
β”‚   β”œβ”€β”€ layout.tsx              # Application shell
β”‚   β”œβ”€β”€ page.tsx                # Main dashboard
β”‚   β”œβ”€β”€ demo/                   # Interactive demo
β”‚   └── test/                   # Development utilities
β”œβ”€β”€ βš™οΈ components/              # React components
β”‚   β”œβ”€β”€ BookLibrary.tsx         # Library management interface
β”‚   β”œβ”€β”€ PDFReader.tsx           # Advanced PDF viewer
β”‚   β”œβ”€β”€ NotesManager.tsx        # Note organization system
β”‚   β”œβ”€β”€ AICompanion.tsx         # AI chat interface
β”‚   β”œβ”€β”€ ReadingStats.tsx        # Analytics dashboard
β”‚   β”œβ”€β”€ AddBookModal.tsx        # Book addition workflow
β”‚   └── LanguageSwitcher.tsx    # Language selection UI
β”œβ”€β”€ 🌐 contexts/                # React contexts
β”‚   └── LanguageContext.tsx     # Internationalization provider
β”œβ”€β”€ πŸ”§ lib/                     # Core utilities
β”‚   β”œβ”€β”€ store.ts                # Central state management
β”‚   β”œβ”€β”€ fileUtils.ts            # File processing utilities
β”‚   └── i18n.ts                 # Translation system
β”œβ”€β”€ πŸ—£οΈ locales/                 # Translation files
β”‚   β”œβ”€β”€ en.json                 # English translations
β”‚   β”œβ”€β”€ zh.json                 # Chinese translations
β”‚   └── es.json                 # Spanish translations
└── πŸ“¦ public/                  # Static resources

πŸš€ Quick Start Guide

Prerequisites

  • Node.js 18.0+ (LTS recommended)
  • npm or yarn package manager
  • Modern browser with JavaScript enabled

Installation & Setup

  1. Clone & Navigate

    git clone https://github.com/aezizhu/ai-reading-assistant.git
    cd ai-reading-assistant
  2. Install Dependencies

    npm install
    # or
    yarn install
  3. Start Development Server

    npm run dev
    # or
    yarn dev
  4. Access Application Open http://localhost:3000 in your browser

🎯 Quick Setup Script

chmod +x start.sh && ./start.sh

πŸ“– User Guide

Getting Started

  1. Add Your First Book: Click "Add Book" β†’ Upload PDF/EPUB/MOBI β†’ Start reading
  2. Set Reading Goals: Navigate to Goals β†’ Create target β†’ Track progress automatically
  3. Take Smart Notes: Highlight text β†’ Add categorized notes β†’ Export when needed
  4. Chat with AI: Ask questions about content β†’ Get summaries β†’ Generate mind maps

Pro Tips

  • Keyboard Shortcuts: Arrow keys for page navigation, Ctrl+F for search
  • Bulk Operations: Select multiple items for batch actions
  • Data Export: Regular exports prevent data loss
  • Goal Strategy: Set realistic daily targets for better success rates

🎨 Customization Options

Themes & Styling

// tailwind.config.js
module.exports = {
  theme: {
    extend: {
      colors: {
        primary: { /* Custom primary colors */ },
        secondary: { /* Custom secondary colors */ }
      }
    }
  }
}

Adding Languages

  1. Create /locales/[language].json
  2. Add language to lib/i18n.ts
  3. Update LanguageSwitcher.tsx

Environment Configuration

# .env.local
NEXT_PUBLIC_AI_API_URL=your_ai_service_url
NEXT_PUBLIC_AI_API_KEY=your_api_key
NEXT_PUBLIC_ANALYTICS_ID=your_analytics_id

πŸ”’ Privacy & Security

Data Protection

  • 100% Local Storage: All data remains on your device
  • No Cloud Dependencies: Fully functional offline
  • Client-Side Processing: Files never leave your browser
  • Zero Tracking: No analytics or user behavior monitoring

Security Features

  • Content Security Policy: Protection against XSS attacks
  • File Validation: Secure file type checking and processing
  • Input Sanitization: All user inputs properly sanitized
  • Local Encryption: Sensitive data encrypted in localStorage

🀝 Contributing Guidelines

We welcome contributions from developers of all skill levels!

How to Contribute

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Develop your feature with proper tests
  4. Commit with clear messages: git commit -m 'Add amazing feature'
  5. Push to your branch: git push origin feature/amazing-feature
  6. Open a Pull Request with detailed description

Development Standards

  • βœ… TypeScript for all new code
  • βœ… Follow existing code patterns and style
  • βœ… Add proper error handling and logging
  • βœ… Include JSDoc comments for functions
  • βœ… Test functionality across different browsers
  • βœ… Maintain responsive design principles

Contribution Areas

  • πŸ› Bug fixes and performance improvements
  • ✨ New features and enhancements
  • 🌐 Translation and localization
  • πŸ“š Documentation improvements
  • 🎨 UI/UX enhancements

πŸ“„ License & Legal

⚠️ IMPORTANT: Strict Non-Commercial License

This project is released under a custom non-commercial license with the following terms:

βœ… ALLOWED:

  • Personal Use: Individual, non-commercial use
  • Educational Use: Academic and learning purposes
  • Research: Non-commercial research projects
  • Open Source Contributions: Community contributions welcome
  • Code Study: Learning from the codebase

❌ PROHIBITED:

  • Commercial Use: Any for-profit use without license
  • Redistribution for Profit: Selling or monetizing the software
  • Commercial Integration: Including in commercial products
  • Service Offering: Offering as a paid service
  • White-labeling: Rebranding for commercial use

πŸ’Ό Commercial Licensing

For commercial use, enterprise licensing, or custom development:

Contact Author: aezizhu

  • Email: [contact information]
  • Business Inquiries: [business contact]
  • Custom Development: Available for hire

Licensing Options:

  • Enterprise License: Full commercial rights
  • OEM License: Integration into products
  • Custom Development: Tailored solutions
  • Support Contracts: Professional support

🚨 Legal Notice

Unauthorized commercial use constitutes copyright infringement and will result in:

  • Immediate cease and desist demands
  • Legal action for damages
  • Potential criminal prosecution
  • Public disclosure of violations

πŸ“ˆ Performance & Optimization

Technical Specifications

  • Initial Load: < 2s on 3G connection
  • Core Web Vitals: Excellent scores across all metrics
  • Bundle Size: Optimized with code splitting
  • Memory Usage: Efficient state management
  • Browser Support: Modern browsers (ES2020+)

Optimization Features

  • Lazy Loading: Components loaded on demand
  • Image Optimization: Next.js automatic optimization
  • Caching Strategy: Efficient caching for better performance
  • Code Splitting: Reduced initial bundle size
  • Tree Shaking: Unused code elimination

🌟 Star History & Community

Star History Chart

Community Links

  • GitHub Discussions: Feature requests and community chat
  • Issue Tracker: Bug reports and technical issues
  • Wiki: Comprehensive documentation and guides
  • Releases: Version history and changelog

πŸ™ Acknowledgments & Credits

Open Source Libraries

  • Next.js Team: Revolutionary React framework
  • Vercel: Deployment and hosting platform
  • Tailwind Labs: Beautiful utility-first CSS
  • Mozilla: PDF.js rendering engine
  • React Team: Component-based architecture

Special Thanks

  • Open Source Community: Inspiration and collaboration
  • Beta Testers: Early feedback and bug reports
  • Contributors: Code improvements and features
  • Translators: Multi-language support

πŸ“ž Support & Resources

Getting Help

  • πŸ“š Documentation: Comprehensive guides in /docs
  • πŸ› Bug Reports: GitHub Issues with templates
  • πŸ’¬ Discussions: Community Q&A and features
  • πŸ“§ Direct Support: Contact author for urgent issues

Stay Updated

  • ⭐ Star the repository for updates
  • πŸ‘€ Watch for new releases and features
  • 🍴 Fork to contribute or customize
  • πŸ“’ Share with your reading community

πŸ† Project Status & Metrics

πŸ“Š Development Status

Build Status Code Quality TypeScript Coverage Dependencies

πŸš€ Technology Stack

Next.js TypeScript Tailwind CSS Node.js Version npm Version

πŸ“ˆ Community & Activity

GitHub Stars GitHub Forks GitHub Issues GitHub Pull Requests GitHub License GitHub Last Commit GitHub Contributors


πŸš€ Built with passion by aezizhu

Revolutionizing digital reading, one feature at a time

⭐ Star this project | 🍴 Fork & Contribute | πŸ“– Documentation

About

πŸš€ AI-Powered Reading Assistant: Transform your digital reading with intelligent note-taking, highlighting, goal tracking, and multi-language support. Built with Next.js 14, TypeScript, and modern AI technologies for enhanced learning and productivity.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published