Problem and inspiration
After missing a class, a student often receives a pile of notes without knowing which ideas matter, which work was assigned, or what to study first. CatchUp AI is a prototype for students returning after an absence who need a manageable recovery plan.
What it does
Enter a subject, topic, lesson notes, available study time, and an optional deadline. CatchUp AI organizes that material into a summary, key concepts, terms, tasks, a five-step study plan, and a short self-check. Students can mark tasks complete, see quiz explanations, ask follow-up questions, export the plan, and revisit recent lessons on the same browser.
TXT, Markdown, and text-based PDF imports are supported. The demo includes Taylor-series notes and works without a sign-in in Local mode. Choose Load demo, then Generate my catch-up plan.
How it works and how it was built
The interface uses HTML, CSS, and JavaScript. PDF.js extracts text from readable PDFs. Browser localStorage retains the current plan and up to six recent lessons; a service worker caches core app files after an online visit.
Local mode uses extraction rules and templates. Tasks identified from explicit assignment language are labeled separately from suggested practice. A deadline influences priority, and study-plan steps divide the selected time. Its Taylor-series quiz is prewritten; other topics receive a basic study-skills quiz. Local mode is not a language model or a full subject assessment.
Optional Live AI uses Puter.js ai.chat to request structured summaries, concepts, terms, tasks, study plans, quizzes, and follow-up answers. The app uses the SDK's default model rather than a fixed model name. If the library or request is unavailable, plan generation falls back to Local mode.
Tools and AI-use disclosure
Tools: HTML, CSS, JavaScript, PDF.js 3.11.174, Puter.js v2, browser localStorage, a service worker, and ChatGPT Sites hosting.
ChatGPT assisted with code, interface design, documentation, and submission wording. An AI coding assistant also reviewed and revised the demo configuration, task labels, privacy wording, and source package. AI assistants are tools, not team members.
At runtime, Local mode does not call an AI model. Selecting Live AI sends the supplied lesson context and questions to Puter and its AI provider, may require sign-in or usage credits, and is subject to their terms. No developer API key is embedded. AI output can be wrong and must be checked against the original notes and teacher instructions. The app loads third-party fonts and libraries; see the demo's Privacy & AI use page for details.
Challenges and lessons
The main design challenge is turning incomplete notes into useful next steps without presenting suggested practice as assigned homework. Clear labels, a source-constrained AI prompt, and an explicit local fallback help communicate those limits. Another challenge is balancing a quick demo with external AI availability, so the default experience works locally without an account.
The implementation shows why structured output, visible limitations, and a usable fallback matter as much as the generation step itself.
Validation and current limits
Automated checks covered local demo generation, task labels, five-question scoring, unanswered-quiz validation, study-time totals, saved state, text export, and unavailable-AI fallback. A real live-provider response and browser rendering have not been independently tested in this review. No learning-outcome study has been conducted.
Local summaries, generic terms, and follow-up answers are limited. Scanned PDFs/OCR, teacher classrooms, cross-device sync, and calendar integrations are not implemented. Those are possible future improvements.
Team and source
Rahul Srinivas is the sole listed team member. The demo includes a Download source link containing the app files, README, privacy and AI-use disclosure, sample notes, and license.
Built With
- ai
- css
- html
- javascript
- openai
- pdf.js
- puter.js
Log in or sign up for Devpost to join the conversation.