About CourseMap
Every semester, students work out by hand where they stand in their degree and what they can take next. The answers are all in the department's course map, but that map is a PDF: arrows you can't click and rules you have to remember.
What it does
- Map
- Your department's course map, clickable: what you've passed, what's open to you, and what each course is waiting for.
- Semesters
- The same courses as a list, semester by semester, for recording results quickly on any screen.
- Plan
- Every semester to graduation, laid out toward the goal you pick, with the courses that set your date.
- Guidance
- Answers to the questions students ask each semester: what to take next, which grades you need, what a failed course costs.
LAU's Computer, Electrical and Mechatronics Engineering maps are prebuilt, each checked against its department's course map: add yours on Course maps. Any other major's map can be read from its PDF.
Where the numbers come from
The rules come from the university's published catalog, written down as data: minimum grades, repeats, class standing, load limits. GPA, standing and what's available are calculated every time from your grades and those rules, so each answer can show the rule behind it. They're estimates from the map's rules, not advice from your university.
Your data
An account keeps your progress and your own maps, and brings them to any device you sign in on. Your grades are stored only in CourseMap's own database, never shared or sold, and there's no tracking. You can export everything or delete your account at any time from Settings.
How it's built
A TypeScript monorepo: a validated course-map format, a progress engine that turns grades into answers, a planner that builds semesters toward graduation, and guidance that explains them. Each part has a written spec and is built test-first. University rules live in data files, never in the code, so a new school is a new file.
Who made it
A Computer Engineering student at the Lebanese American University, as a portfolio project.