Authors: Daniel J. Bell, Kyle C. Fairfax, Joseph E. Webster
Date: August 2018 - May 2019
This project was created using React, NodeJS, and Microsoft SQL Server. The intended audience includes High school Students, Advisors, and KSU Computer Science Administration.
Ubuntu Linux v.19.04
Node v.10.15.3
NPM v.6.4.1
React v.16.6.1
React-Boostrap v.0.32.4
- Open a new terminal window and type "npm -v" to check the version of NPM and type "node -v" to check the version of node. Both of the programs must be properly installed and be at or above the versions listed above.
- Download/Clone the repository into a new directory.
- Within the "api" folder run "npm install"
- Run the command "npm start". If the program displays port numbers, the API is running successfully.
- In a new terminal window, open the "client" folder run "npm install".
- Run the command "npm start" just like the above.
At this point of the installation the project will automatically open in your default web browser! All functionally relating to login, registration, and data retrieval won't be opperational. This requires setting up the database locally. To complete this, follow the steps below.
- sudo apt update
- sudo apt install curl
- sudo curl -sSL https://get.docker.com/ | sh
Alternative Installation Method
- sudo apt install apt-transport-https ca-certificates curl software-properties-common
- curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
- sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic test"
- sudo apt update
- sudo apt install docker-ce
- View Running Databases: docker ps
- Start Database Instance: docker start <database_name>
- Stop Database Instance: docker stop <database_name>
- Remove Database Instance: (Only while database is inactive): docker rm <database_name>
- sudo docker pull mcr.microsoft.com/mssql/server:2017-latest
- sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=hspc2018!" -p 1433:1433 --name=hspc_database -d mcr.microsoft.com/mssql/server:2017-latest
- Within dbeaver click on "Create New Connection".
- Select "Microsoft SQL Server" and then click next
- Within the "General" tab select "Edit Driver Settings" and download the latest drivers.
- Back within the "General" tab, use "SA" and "hspc2018!" for the username and password respectively
- Select Test Connection, if no errors occur then Finish.
- Open the terminal and type "sudo docker ps" to ensure the database container is running.
- Right click the newly created connect and select "SQL Editor".
- Within the "API" folder of the repo, copy the SQL code found within the "Database" folder into the dbeaver SQL editor.
- Run the commands to create the database and the list of tables.
- Refresh the list of databases within the connection and ensure "hspc_database" is set to actice.
At this point the database setup is complete and ready to use!
This program features 6 different access levels that provide access to different portals. The access levels for these are numbered 1 through 6, representing "student", "volunteer", "judge", "advisor", "admin", and "master" respectively. Go to the registration page and create a new user. If an account level is selected as anything other than "student", the program will warn the user and apply the requested access level for later approval by an admin account. For the first couple accounts, users will have to be created as students. These accounts can then have their access level upgraded directly by manipulating the database within dbeaver.