Release Notes
What’s New
- This is version 1.0.0 for Georgia Tech Financial Learning Curriculum online quiz platform. The goal of this platform is to provide students with review materials for the course and closer to real-life practice experience when they encounter financial related issues.
- Features:
* Kahoot code style registration codes in order to link a student with an instructor and the instructors courses.
* Students can:
* View course materials
* Take a quiz for each course, which includes:
* A multiple choice questionnaire
* An open ended question that is recorded and sent to professors in a daily digest
* Provide reviews and feedback for the course after finishing a quiz
* Review multiple choice answers and course materials on quizzes
* Instructors can:
* Assign courses to registration codes
* View quiz grades and open ended responses of students enrolled in a registration code they own
* Export grades as CSV files
* View student reviews by course
Install Guide
npm install
in both frontend and backend folder to install * dependenciesgit clone + link
to download this repository to your local environmentcd
into both frontend folder and backend folder to run npm install
to install all dependencies needed for the applicationcd FLP/backend
)brew services start mongodb-community
if installed through Homebrew. Otherwise, start mongoDB by consulting the specific installation guide used in the "Prerequisites" stepnpm start
to start the backend. (You should see “Listening on port 8000” on console)cd FLP/frontend
)npm start
brew services restart mongodb-community
to restart the database before you start the backend.courses
. This courses
attribute holds an array of course JSONs, representing all of the courses possible in the application.id
: A unique identifier for the course (string
)courseName
: Name of the course (string
)summaryText
: Body of text providing the course information (string
)summaryVideo
: An array of video objects to render (Array[object]
), that look like:
type
: The source of the video. Right now, the only supported value is "youtube"
(string
)videoId
: The unique video identifier. For youtube videos, that is what comes in the url after v= when viewing a video. For example, for this youtube video https://www.youtube.com/watch?v=jNQXAC9IVRw, the videoId is jNQXAC9IVRw
(string
)quiz
: the quiz (object
)for this course, containing:
mcQuestions
: An array of multiple choice questions (Array[object]
). Each item looks like:
questionId
: ID of question. Each question ID in this array must be different from every other question ID in this array (number
) questionContent
: The question text to ask (string
),answerChoices
: An array of strings, where each string represents a possible answer (Array[string]
)correctAnswerIndex
: the correct answer's zero indexed index within answerChoices
(number
)emailQuestions
: This is stored as an array, but it must be an array of length 1 at most, since we built this to only handle one email question. This is unfortunately a product of a pivot to only handle one email question, as we discussed with our client. (Array[object]
but only length 1!)
questionContent
: The question text to ask (string
),videoId
: Part 1/2 of showing a video embedded within an email question. This is to be filled out using the same rules that are used for the summaryVideo
's videoId
, as it is a unique video identifier. It is optional, but if specified, the videoType
must be specified. Only YouTube IDs are currently supported (string
)videoType
: Part 2/2 of showing a video embedded within an email question. This is to be filled out using the same rules that are used for the summaryVideo
's videoType
, as it specifies the source of the video. It is optional, but if specified, the videoId
must be specified. Only the type "youtube"
is currently supported(string
)