Inspiration
University is far more different than high school in the sense that classes are far more fast paced. As first year students, sometimes we are so occupied with writing notes and making sure every bit of information is stored for future use, which is pointless since we don't actually understand what is being copied.
What it does
SYNC does not only ensure that students are keeping up with content, but also synchronizing their learning with the pace of the educator. If one student needs help, it's unlikely they are the only one in a class of one hundred. Therefore, SYNC provides an interface that educators can monitor how the class is progressing, and emphasize any areas that are hard to understand, which is provided through the "I'm Lost" button that tracks exactly which section of lecture it refers to.
How we built it
The backend server used was Node.js with WebSockets for low latency live streaming to devices. Cloudfare tunnnelling was used to expose the local server securely through HTTPS to support mobile phones in class. Deepgram was used to convert speech to text accurately for feed data and Anthropic Claude API. React was used for both front ends for the educator and student.
Challenges we ran into
Initially, we used Claude Opus 5.5 for heavy computer vision tasks, but this was very costly to build. Instead, we had to downgrade to Claude Haiku which brought down costs from $4.50 dow nto $0.75 per lecture hour.
Accomplishments that we're proud of
We were able to develop the app in such a way with practical features that we would use ourselves, since we were also able to cut down on costs.
What we learned
AI can be costly, we learned how to properly optimize our functions without consuming too many tokens.
What's next for SYNC
Connect the lectures to a database that students can refer back to at the end of term to help study for tests and exams.
Built With
- claude
- cloudfare
- css
- deepgram
- eventlog
- html
- javascript
- katex
- node.js
- react
- typescript
- vanilla
- websockets