StudyBridge is a comprehensive web application that converts inaccessible PDF documents into multiple accessible formats using AI, specifically designed for students with disabilities.
- PDF Processing: Upload and extract text from both text-based and scanned PDFs
- AI Content Simplification: Google Gemini-powered content adaptation for different disabilities and reading levels
- Text-to-Speech: Web Speech API integration with adjustable speed and voice selection
- Visual Accessibility Controls: Customizable fonts, sizes, contrast modes, and spacing
- Study Tools: AI-generated flashcards, summaries, key terms, and quizzes
- WCAG 2.1 AA compliant
- Screen reader compatible
- Keyboard navigation support
- High contrast modes
- Dyslexic-friendly fonts
- Adjustable text spacing and sizing
- Multi-disability support (Dyslexia, ADHD, Autism, Visual/Hearing/Motor impairments)
Important: This app requires a Google Gemini API key for AI-powered content simplification.
- Visit Google AI Studio
- Sign in with your Google account
- Click "Get API Key" or "Create API Key"
- Copy your API key
Edit /app/backend/.env and add your key:
GEMINI_API_KEY="your_gemini_api_key_here"sudo supervisorctl restart backendOpen your browser and navigate to the app URL. The application is now ready to use!
- Set Up Profile: Click "Profile" button → Select your accessibility needs → Save
- Upload PDF: Drag & drop or browse for a PDF file
- Simplify Content: Click "Simplify Content" to process with AI
- Explore Tools:
- Adjust visual settings (font size, spacing, contrast)
- Use Text-to-Speech for audio playback
- Generate study aids (flashcards, quizzes, summaries)
- Free Alternative: Saves $2000+/year vs. commercial assistive technology
- AI-Powered: Google Gemini adapts content for different disabilities
- Multi-Modal: Text, audio, and visual accessibility options
- Privacy-Focused: All processing done securely, no data stored
- Frontend: React 19, Tailwind CSS, Shadcn UI
- Backend: FastAPI, Python 3.11
- AI: Google Gemini Pro
- PDF: pdfjs-dist, PyPDF2
- TTS: Web Speech API
- Storage: localStorage (profile), MongoDB (optional data)
POST /api/extract-pdf- Extract text from PDFPOST /api/simplify-content- Simplify with AIPOST /api/generate-study-aids- Generate study materials
- "API key not configured": Add key to
/app/backend/.envand restart backend - "Failed to simplify": Check API key validity and quota limits
- No text extracted: File may be image-based (OCR coming soon)
- Slow processing: Large PDFs take time to process
- Use Chrome, Edge, or Safari for best TTS support
- Check browser permissions if audio doesn't work
- Visual: Font controls, contrast modes, spacing adjustments
- Cognitive: Content simplification, chunking, reading level adaptation
- Auditory: Text-to-speech with speed/voice controls
- Motor: Large touch targets, keyboard navigation
- Screen Readers: Full ARIA support, semantic HTML
Accessibility-first design with:
- High contrast colors (Ocean Blue, Emerald Green)
- Modern, readable fonts (Manrope, Inter)
- Large touch targets (48px minimum)
- Clear visual hierarchy
- No gradient overload
- Smooth transitions
/app/
├── backend/
│ ├── server.py # FastAPI app with Gemini integration
│ ├── requirements.txt # Python dependencies
│ └── .env # Configuration (ADD GEMINI KEY HERE)
├── frontend/
│ ├── src/
│ │ ├── components/ # React components
│ │ ├── services/ # API services
│ │ └── utils/ # Helper functions
│ └── package.json # Node dependencies
└── README.md # This file
For issues or questions:
- Check this README
- Verify Gemini API key configuration
- Check browser console for errors
- Ensure backend and frontend services are running
Built for accessible education • Powered by Google Gemini AI