Inspiration

We were tired of manually copying our university schedules into calendar apps every semester. It was repetitive, error-prone, and unnecessary. We wanted a universal solution that worked for every student—at any school.

What it does

FlareTable extracts a student’s timetable directly from their university’s schedule page, processes the data, and instantly converts it into an ICS file compatible with Google Calendar, Apple Calendar, Outlook, and more.

How we built it

We built FlareTable with the WXT framework for seamless extension development, Vue for a clean UI, and Express for backend parsing and ICS generation. Our backend is deployed on Cloudflare for speed and reliability. To support multiple universities, we integrated Perplexity and OpenRouter to interpret different schedule formats and improve extraction accuracy.

Challenges we ran into

Coordinating two AI models (Perplexity and OpenRouter) was tricky—they interpreted data differently and caused integration issues. Using Cloudflare for the first time also came with setup and routing challenges. Bringing all parts together—extension, backend, AI, and multi-university support—required careful debugging to make everything work smoothly.

Accomplishments that we're proud of

We built a functioning, multi-university solution that reliably converts schedules into ICS files. The extension adapts to diverse formats, produces clean events, and eliminates the need for students to manually transfer their schedules.

What we learned

We learned how to design flexible parsing pipelines, handle unpredictable HTML, build a robust browser extension, and create standardized ICS output from inconsistent data. We also improved our debugging workflow across multiple school systems.

What's next for Flaretable

We plan to expand support to even more universities, add auto-detection for school formats, introduce custom event styling, and build a sync feature. Ultimately, FlareTable aims to become the universal scheduling tool for students everywhere.

Built With

Share this project:

Updates