Inspiration
Every UTD student knows the struggle of choosing class sections that won’t destroy your GPA or your sleep schedule. Usually, students check Trends for professor ratings and then go to CourseBook to see when those professors are teaching. But the sections don’t always match your ideal schedule, sometimes forcing you into 8 AM classes, late evening classes, or long gaps between classes where you’re stuck on campus.
What it does
CometFlow simplifies this process by considering professor ratings, course difficulty, and the time gaps between classes to generate the most optimal schedule. If you do end up with free time between classes, our chatbot can suggest productive or fun activities, such as working on assignments, applying for internships, attending club events, or spending time with friends.
How we built it
CometFlow was built using React, TypeScript, and Tailwind CSS for the frontend, Next.js for the backend, and MongoDB for data storage, while integrating the Nebula Labs API for course and campus information.
Challenges we ran into
The hardest part for us was getting ratings for professors, since that data was not included in the Nebula Labs API and instead had to be gathered from Rate My Professor. Trying to incorporate professor difficulty and rating into our optimization algorithm to determine the most optimal schedule proved to be challenging, especially since it was our first time working with APIs. Additionally, we also had to work with Google Gemini AI for our chatbot, which required learning how to structure prompts and integrate AI responses with our application so that the chatbot could provide useful recommendations based on a student’s schedule and free time.
Accomplishments that we're proud of
We are proud of building a full stack application from scratch during the hackathon using React, TypeScript, Tailwind CSS, Next.js, and MongoDB. We successfully integrated multiple APIs, including the Nebula Labs API for course data and Google Gemini to power our AI chatbot. One of our biggest challenges was incorporating professor ratings and difficulty from Rate My Professor since that data was not included in the Nebula API. By combining these data sources, we were able to create a system that generates optimized schedules and helps students better use their free time between classes.
What we learned
Through this project, we learned how to integrate real world APIs and build a complete full-stack application. We gained experience working with external data sources, structuring backend logic, and using Google Gemini to create an AI-powered chatbot. We also improved our teamwork and GitHub collaboration skills while solving technical challenges related to APIs, data processing, and system integration.
What's next for CometFlow
Next, we plan to improve CometFlow by adding more data sources and making the AI recommendations more personalized. We also hope to add features like calendar integration, walking time optimization between buildings, and better campus event suggestions.
Log in or sign up for Devpost to join the conversation.