Scarlet Navigator is a free and open source project designed to make planning your courses less confusing and more intuitive. By looking at the bigger picture, you'll be more confident about your path towards graduation. Once a side-project, Scarlet Navigator is now managed, maintained, and developed by Rutgers CSL.
Check out the reddit post! @ go.rutgers.edu/scarletnav.
Awarded Best Fullstack Project by the Rutgers Computer Science Department!
-
Drag and Drop
- Intuitively move your courses around like it's no big deal. From a list of over thousands of Rutgers University courses, drag them into your schedule. Don’t see a course? No problem! You have the option to create courses yourself.
-
Customizable Degree/Program Tracker
- So many cores and requirements to track. Pre-med. Pre-pt. Pre-dental. Computer Science. How about you create them yourself? Or… you can choose from a small list of already-made tracks.
-
GPA Calculator & Credit Calculator
- See if you’d be on track to completing your graduation with the GPA that you want. Add in your current grades or grades that you predict you’ll receive in the future
-
Add in Helpful Notes
- Want to create a checklist or write down notes on particular courses or semesters? No problem. Markdown is supported.
Currently in VERY active development.
To start a development environment, install the following:
Then run the following commands:
git clone https://github.com/Rutgers-CSL/Scarlet-Navigator.git
cd Scarlet-Navigator
pnpm run i
pnpm run dev
pnpm run dev
will run two services:
- Next.js (port 3000)
- TypeSense (port 8108, Docker container)
Open http://localhost:3000 with your browser to see the result.
To populate TypeSense with course data,
pnpm run generateAndUploadFakeCourseData
This will spin up a TypeSense container, generate a set of random courses, upload it to the TypeSense container instance, and then take down the container. For more details, check out scripts/generateAndUploadFakeCourses.sh
.
