Inspiration

Millions of students worldwide study from dense textbooks with no tutors, no study groups, and slow internet. They don't know what they don't know — and by the time they find out, it's exam day. I wanted to build something that acts as a personal AI tutor for any student, anywhere.

What it does

EduLens is an AI-powered study companion. A student uploads any PDF — a textbook chapter, lecture slides, past exam paper — and EduLens immediately becomes their personal tutor for that material.

Core Features:

  • Smart Summarization — Breaks documents into digestible, student-friendly summaries by section
  • Auto-Quiz Generation — Creates multiple-choice questions with step-by-step explanations
  • RAG-Powered Q&A — Students ask any question and get answers grounded in their uploaded document
  • Weak Spot Tracker — Tracks quiz performance per topic and surfaces which concepts need review
  • Study Plan Generator — Input exam date, get a day-by-day plan focused on weak areas

How I built it

  • FastAPI for the Python backend
  • Google Gemini API (gemini-3.6-flash) for AI generation — free tier, no credit card needed
  • ChromaDB for vector search (RAG)
  • PyMuPDF for PDF text extraction
  • SQLAlchemy for data persistence
  • Vanilla HTML/JS with glassmorphism UI for minimal frontend

The entire stack is designed for low-bandwidth environments — fast API responses, minimal JS, works on any device with a browser.

Challenges

  • Section detection — PDFs have no standard heading format. Built a custom parser that detects chapters, sections, and numbered headings across different PDF styles
  • RAG accuracy — Tuned chunk sizes and overlap to ensure AI answers are grounded in the document, not hallucinated
  • Free tier optimization — Used Gemini's free API with lazy client initialization to stay within rate limits

What's next

  • Multilingual support (auto-detect document language)
  • Export study plans as PDF
  • Teacher dashboard to assign documents to classes
  • Offline mode with service workers

Built With

Share this project:

Updates

Submission history