Inspiration We noticed that students spend an enormous amount of time simply preparing to study—highlighting, summarizing long PDFs, and manually creating flashcards. This leaves less time for the most effective learning methods: active recall and practice testing. We wanted to build a "scaffold" for studying—hence StudyScaff—to completely automate the tedious preparation phase, allowing learners to jump straight into high-yield, interactive study sessions. What it does StudyScaff is an AI-powered study companion that transforms passive reading into active learning. Users can upload lecture PDFs, share Google Drive links, or paste raw text. In seconds, the application analyzes the material and automatically generates: Comprehensive Notes: A structured breakdown of the core concepts. Interactive Flashcards: Clean, flippable cards designed for active recall. Dynamic Quizzes: Multiple-choice questions to test immediate comprehension. Furthermore, we've extended the platform with a Telegram Bot (@STUDYSCAFF_AI_BOT), allowing users to sync their study materials to their phones and review flashcards or take quizzes on the go. How we built it We built StudyScaff as a modern full-stack web application: Frontend: React, Vite, and Tailwind CSS for a highly responsive, polished, and intuitive user interface. Backend: A Node.js and Express server that handles secure file uploads (via Multer), URL parsing, and document text extraction. AI Engine: We integrated Google's Gemini 3.5 Flash model via the @google/genai SDK. We utilized advanced prompt engineering and system instructions to strictly constrain the AI to the provided source material, generating reliable, structured JSON outputs for the UI components. Integrations: We implemented QR code generation and direct routing for our companion Telegram Bot to bridge the desktop and mobile learning experience. Challenges we ran into One of the primary challenges was handling the unpredictability of PDF parsing. Lecture slides and academic papers often have complex, non-linear layouts. We had to write robust server-side extraction logic to clean the text before feeding it to the AI. Another major hurdle was prompt tuning: ensuring Gemini consistently returned perfectly formatted JSON arrays for the flashcards and quizzes without injecting conversational filler or hallucinating information outside of the uploaded document. Accomplishments that we're proud of We are incredibly proud of the speed and seamlessness of the user experience. Going from a raw, 50-page technical PDF to a beautifully styled, interactive quiz in mere seconds feels like magic. We are also highly proud of the visual design and the mobile-first approach we took by integrating the Telegram bot, which makes studying feel less like a chore and more like an accessible daily habit. What we learned Building StudyScaff deepened our understanding of full-stack TypeScript development and state management in React. Most importantly, we learned a massive amount about applied AI and prompt engineering—specifically, how to instruct an LLM to act as a strict, accurate, and encouraging tutor rather than just a conversational chatbot. What's next for StudyScaff In the future, we plan to implement full user authentication and database persistence (such as PostgreSQL/Cloud SQL) so students can save and organize their decks across semesters. We also plan to integrate our viaSocket hook to implement a true Spaced Repetition System (SRS) algorithm, which will automatically push timely review notifications and quizzes to the user's WhatsApp or Telegram right before they are predicted to forget the material.

Built With

Share this project:

Updates