Capstone Project for Portland State University FW23-24
Team Members: Anh Ho, Dan Ha, Daniel Tran,
Linh Nguyen, Matej Bozic, Wes Wolf
Team Lead: Nicholas Nguyen
Supervisor: Bruce Irvin
Sponsor: Tong Zhang
The purpose of this project is to create a curriculum navigator for current and future students who are interested in STEM fields. The main function is for this navigator to direct students towards services, camps, courses, and other similar offerings all from within one web application.
cd
into the correct directory before each part, or open the terminal/command prompt right in the correct directory before each part.
Directions for how to do the latter are below:
Copy and paste the commands
into the terminal while in the correct directory.
- Right-click on Windows
Edit
>Paste
on Mac, or drag the selected text into the terminal
- First, start the Docker app (setup instructions are here)
- Enter the db-dump directory from the base of the folder:
cd db-dump
- Set up the database container for Docker in terminal:
docker compose up -d
- Create and fill the database:
docker exec -i db mysql -uroot -pmy-secret db < stem_navigator.sql
Steps for using Windows PowerShell:
- Enter the db-dump directory from the base of the folder:
cd db-dump
- Set up the database container for Docker in terminal:
docker compose up -d
- Copy the stem_navigator.sql to the Docker container:
docker cp .\stem_navigator.sql db:/tmp/stem_navigator.sql
- Execute the file with Docker to create database:
docker exec -i db mysql -uroot -pmy-secret db -e "source /tmp/stem_navigator.sql"
- Install Node.js if you don't already have it
- All the default options are fine, no need to change the given settings
- You will need administrator credentials to install this
- Enter the backend directory from the base of the folder:
cd backend
- Install the necessary dependencies:
npm i
- Start the web app backend:
node server.js
- KEEP THIS TERMINAL OPEN while exploring the web app to keep the backend "server" running
- Enter the frontend directory from the base of the folder:
cd frontend
- Install the necessary dependencies:
npm i
- You may see warnings about vulnerabilities. These should not affect the web app's performance and can be ignored as we are working on those.
- Start the web app:
npm start
- KEEP THIS TERMINAL OPEN while exploring the web app as this is what is actually running the app