This project was created for CS 30700: Software Engineering at Purdue University.
The purpose of the project is to compile many of the resources students use for course planning into a single application that streamlines the process, making it easier and faster to create a degree plan and to modify it as you go.
The project is now being continued independently here.
Install node.js, and optionally docker
cd into the client folder
To update packages, such as when new dependencies are added, run npm i
To install a package from npmjs, run npm i {package_name}
- Note: some packages (such as material UI) may not have been updated for the latest version of React.
Installing these may require adding the
--legacy-peer-depsflag. (e.g.npm i --legacy-peer-deps)
Run npm run dev inside the client folder
cd into the server folder
Copy the .env.example file to a new file called .env
To update packages, such as when new dependencies are added, run npm i
To install a package from npmjs, run npm i {package_name}
Run npm run dev or node index.js inside the server folder
Docker allows you to run a local database and mail server.
Run docker compose up inside the root folder.
You can also specify the -d flag to run in the background (docker compose up -d)
- To stop the server, run
docker compose down
MailHog is a fake email server useful for local development. The following ports are used:
localhost:1025is the SMTP mail server for sending emails tolocalhost:8025is a web interface for viewing the sent emails in your browser
The local MongoDB instance is exposed on localhost:27017. The admin username is root and the admin password is hunter2
Mongo Express is a web interface for browsing the contents of the mongoDB database. It is located at localhost:8081