Schedule Me
Schedule Me is a course scheduling app built for a software engineering course and then pushed well past the assignment. The core is a Java backend that loads a real course database and exposes search, filtering, and schedule management over a Javalin API. On top of that sits a React frontend with drag-and-drop schedule building, fuzzy course search, saved schedules, and user profiles. The part I like most is the AI advisor: a Python service that embeds the college bulletin and degree status sheets into a FAISS vector store and answers student questions against them, with the student's current schedule passed in as extra context so it can reason about conflicts and planning.
Attention: Not hosted yet. It runs locally as three services: the Javalin API on port 7070, the React dev server on 3000, and the Flask advisor on 5001. The advisor needs an OpenAI API key.
Built
2025
Who built it
Team project for COMP 350. I worked across the Java backend, the React frontend, and the AI advisor integration.
Repository
Built with
- Java
- Javalin
- Gradle
- React 19
- Material UI
- Python
- Flask
- LangChain
- FAISS
- OpenAI GPT-4o-mini
- JUnit 5
Not hosted yet - worth hosting
Cloudflare Pages for the React app, a container host for the Java API and the Python advisor
This is the strongest unhosted project on the list and the one most worth putting online. The React app builds to static files and can go on Cloudflare Pages today. The Javalin API and the Flask advisor both need a real runtime, so they belong on a container host such as Fly.io or Cloud Run. The AI advisor needs an OpenAI key, so the honest cheap version is to deploy the scheduler without the advisor and gate the chat behind a key you control.