Inspiration
Course planning can be stressful and time-consuming. Students often need to search through course catalogs, compare sections, check for time conflicts, track credit limits, and balance preferences across several different tools. We created Syllo to bring that entire process into one simple and intuitive experience.
What it does
Syllo is an AI-assisted course planning tool that helps students create personalized, conflict-free semester schedules.
Students can:
- Search the course catalog
- Select required and optional courses
- Describe their preferences in everyday language
- Set blocked times, credit limits, preferred class times, and days off
- Generate and compare multiple schedule options
- View schedules on a weekly calendar
- Manually change sections and receive conflict warnings
- Save schedules for later
The AI interprets the student's preferences, while a deterministic scheduling engine verifies that every generated schedule follows the required constraints.
How we built it
We built the frontend with Next.js, React, TypeScript, and CSS. The interface uses a calendar-first design so students can easily understand their schedules.
Our backend uses Java and Spring Boot. It provides REST API endpoints for course searches, preference extraction, schedule generation, manual schedule checking, and elective suggestions.
Course and section information is stored in PostgreSQL. Claude helps convert natural-language requests into structured preferences, but it does not decide whether a schedule is valid. Our Java scheduling engine handles validation, detects conflicts, and ranks the valid results.
Challenges we faced
One major challenge was connecting the user interface, backend, database, AI, and scheduling engine into one working system. Each part needed to use the same course IDs, section information, and request formats.
We also needed to distinguish between hard constraints and soft preferences. A time conflict must never be allowed, while preferences such as avoiding early classes should influence the ranking without making a schedule invalid.
Another challenge was preserving our original interface while replacing prototype data with real backend responses. We solved this by connecting new React components to the existing design and keeping the scheduling rules centralized in the backend.
What we learned
We learned how to build and connect a full-stack application using React, Next.js, Spring Boot, PostgreSQL, and an AI API. We also learned that AI works best when it has a focused responsibility.
Instead of asking AI to create schedules by itself, we use it to understand the student's language. A deterministic engine then handles correctness. This makes Syllo safer, more predictable, and easier to test.
Accomplishments that we're proud of
We are proud that Syllo can turn a student's preferences into structured requirements and generate multiple conflict-free schedule options. We also created an interface where students can visually compare schedules and receive immediate feedback when manually changing sections.
What's next for Syllo
We hope to bring Syllo into real use at Lehigh and continue improving it with:
- Student accounts and cloud-saved schedules
- Degree-progress and prerequisite checking
- Advisor collaboration
- More complete catalog integration
- Improved schedule explanations and recommendations
- Direct support throughout the registration process
Syllo is an independent student project and does not register students for courses, but our goal is to make planning and registration much easier for both students and advisors.
Log in or sign up for Devpost to join the conversation.