Syllabuddy
An AI study planner that reads your syllabi, verifies every deadline against the source text and builds one week-by-week plan that flags crunch weeks.



Project Details
About the Project
Every semester starts the same way: four courses, four syllabi, each written differently. The deadlines are scattered across PDFs, tables and paragraphs, and nobody adds them up, so the week where three deadlines collide only becomes obvious when it's already on top of you. I built Syllabuddy to find that week early.
What It Does
Syllabuddy turns your syllabi into one study plan:
- read — upload a PDF or photo, or paste the assessment section, and the AI extracts every deadline and grade weight;
- check — every date is checked against the original text, doubtful items get one second look from the AI, and you review an editable table;
- plan — code builds a week-by-week plan, flags crunch weeks and shows this week's load, your next deadline and today's tasks; and
- adapt — type “I'm sick from Thursday to Sunday” and the AI proposes changes that apply only once you approve them.
The plan can be exported as a calendar file.
An AI That Gets Checked
The AI does the two jobs that are hard for code: reading messy documents and understanding plain-English changes. Everything else is ordinary code, so the plan is predictable.
The syllabus is treated as untrusted data. Every extracted item must quote the line it came from, and the server checks that the quote exists and that its date matches. The text is also scanned for planted instructions, including hidden text in PDFs.
On six test syllabi, including two prompt-injection attacks, Syllabuddy found 24 of 24 deadlines, got 23 of 23 grade weights right, invented nothing and followed neither attack. It's a small test set, so it's a rough guide.
Project Satisfaction
I'm proud that the AI is never trusted blindly. Every deadline is checked by code against the original text before a student sees it, and the safety checks are measured, not just claimed.
Biggest Challenge
Reliability on a free-tier AI key: it timed out, hit quotas and sometimes took over a minute. I added time limits, retries, backup models and clear error messages. Testing every page by hand also caught a bug where pasting junk text silently wiped a student's plan.
Key Takeaway
Calling an AI is the easy part. The valuable work is everything around it: checking its answers, handling failures, and keeping the student in control.