Inspiration

RUET students study from scattered PDFs, slides, handwritten notes, previous questions, routines, and Telegram discussions. Finding the right evidence at the right moment takes time, while a traditional LMS mostly stores files instead of helping a student decide what to learn next. We wanted to build an AI-native workspace that acts as a personalized, grounded study companion rather than just a digital filing cabinet.

What it does

EduMind RUET is an AI-native study workspace organized around a student’s real courses. Students upload categorized resources (syllabus, slides, materials, PYQs). It features:

  • Grounded Course Assistant: Answers questions strictly based on uploaded course materials, citing source filenames.
  • Smart Exam Preparation: Turns an exact class test (CT) syllabus, materials, and PYQs into "topper-style" notes with formulas, solved examples, revision cues, examiner traps, and verbatim source-labeled past questions. Notes are downloadable as text or PDF.
  • Assignment Assistant: Provides academic-integrity-safe assignment guidance, plans, and hints without giving away copy-paste answers.
  • Collaboration: Connects a Telegram study group so classmates can interact with the AI and mirror discussions without leaving Telegram.

How we built it

We built the application as a fast, standalone Next.js (App Router) web app using React 19 and Tailwind CSS.

  • Backend & Storage: We used Supabase PostgreSQL for application state and Supabase Storage for private files. To bypass Vercel's serverless payload limits, the browser requests a signed upload token to push files directly to storage.
  • AI Engine: We integrated the Google Gemini API as our core reasoning layer. We implemented advanced prompt engineering, especially for the "Exam Mode", forcing Gemini to output strict JSON schemas and acting as a Retrieval-Augmented Generation (RAG) agent by feeding it raw base64 file data.
  • State Management: For speed during the hackathon, we used a single-document JSON state model that syncs between Supabase and localStorage, enabling rapid feature iteration.

Challenges we ran into

  • File Upload Limits: Vercel's serverless request-body limits prevented us from uploading large PDFs directly through our API routes. We solved this by implementing direct-to-Supabase uploads using short-lived signed tokens.
  • AI Hallucinations: Preventing the AI from generating generic answers or hallucinating facts was a major hurdle. We heavily engineered the system prompts to enforce strict source citations and structured JSON outputs (e.g., ensuring PYQs are copied verbatim).
  • Time Constraints: Building a complex app in a short hackathon window meant we had to sacrifice traditional relational database normalization in favor of a fast, monolithic JSON state architecture.

Accomplishments that we're proud of

  • Smart Exam Mode: We are incredibly proud of the complex "topper-style note generator" prompt. It successfully forces Gemini to synthesize multiple documents into a highly structured, readable format complete with formulas, comparison tables, and worked examples.
  • Seamless Fallbacks: We built the app with robust failovers. Even if Supabase is unconfigured locally or the Gemini API is rate-limited, the app falls back to local storage and credential-free demo responses so the hackathon pitch can proceed uninterrupted.
  • Telegram Integration: Successfully mirroring Telegram discussions and allowing students to invoke the @ai bot directly from their chat groups without needing every student to create a web account.

What we learned

  • Prompt Engineering as Code: We learned that for complex RAG tasks, natural language prompts need to be engineered almost like code—with strict rules, negative constraints, and enforced JSON output structures.
  • Rapid Prototyping Architecture: We discovered that a "JSON-everywhere" state model paired with localStorage is incredibly powerful for moving fast during an event, even if it incurs technical debt for future production.

What's next for EduMind

  • Production Readiness: Replacing demo accounts with real Supabase Auth, implementing proper Row Level Security (RLS), and normalizing the JSON state blob into a traditional relational database.
  • Advanced RAG Pipeline: Implementing OCR indexing and vector databases (like pgvector) for more scalable and accurate document retrieval across massive textbook PDFs.
  • Teacher Portals: Building a dashboard for professors to directly distribute syllabus materials, assignments, and verified PYQs to their enrolled students.

Built With

  • google-gemini-api
  • jspdf
  • next.js
  • react
  • supabase-database
  • supabase-storage
  • tailwind-css
  • telegram-bot-api
  • typescript
Share this project:

Updates