Inspiration

Managing seven courses meant constantly searching through syllabi and course portals for deadlines. We built Syla to organize everything automatically.

What it does

Syla extracts assignments, exams, deadlines, and grading weights from D2L's API from Waterloo LEARN or uploaded Syllabus files, then prioritizes what students should work on.

How we built it

We used Python, Flask, HTML, Supabase, Steel.dev, Anthropic’s Claude, and Cognition’s Devin. Steel handles web navigation, while Claude converts course information into structured tasks.

Challenges we ran into

We switched from TypeScript to Flask halfway through the hackathon and had to handle inconsistent syllabus formats, authentication, duplicate tasks, and unreliable AI output.

Accomplishments that we're proud of

We completed an end-to-end system combining syllabus extraction, live course data, AI prioritization, and web-agent navigation.

What we learned

We learned how to build web agents, process authenticated course content, validate AI output, and adapt quickly as a team.

What's next for Syla

We will deploy Syla for students and scale the project up when we get more users. We also plan to improve security within uploaded syllabus to ensure important student information is redacted.

Built With

Share this project:

Updates

Submission history