mcQuiz is a multiple-choice question-and-answer web app. It comes with a number of versions depending on how mathematical expressions are rendered (TeXZilla or MathJax) and whether the question-and-answer data is encrypted (with or without Advanced Encryption Standard (AES) encryption done using CryptoJS). TeXZilla rendering of math expressions works only on Mozilla browsers (e.g., Firefox and Seamonkey).
A demo can be found at https://justineuro.github.io/mcQuiz.
One can easily modify the available datasets by editing the question-and-answer data file, e.g., setDat-mc-tz-noaes.js
and setDat-mc-tz-aes.js
, that are found inside the js
folder under the main directory:
- Modify the 2nd and 3rd lines of the question-and-answer data file to add more topics. Simply add entries to the data labels array (
datList
) and the topics array (topicsList
). - Modify, as needed, the 4th line to set the
aes
indicator (0 for no encryption, 1 for AES-encrypted). - Modify the 5th line, as needed, to indicate how math rendering will be done (
texzilla
for TeXZilla ormathjax
for MathJax). - Add the additional datasets at the bottom of question-and-answer data set file (
setDat-mc-tz-aes.js
) as arrays. - One may opt to randomize the questions by using the sort() and compare function. See the examples given at the end of each data array already in
setDat-mc-tz-aes.js
.
Special thanks to W3Schools for their tutorials on html, javascript, css, and bootstrap; Bootstrap, Inc. and Bootstrap Live Customizer for the green cerulean-derived style sheet themes; JS Foundation et al. for the jQuery 3.3.1 Javascript Library; Jeff Mott for CryptoJS v.3.2.1; Fred Wang for TeXZilla; Dave Gandy for the Font Awesome 4.7.0 icons; OpenSSLWiki and OpenSSL Command-Line HOWTO by Paul Heinlein for infomation on AES-encryption using openssl enc
; StackOverflow user:nico for the smoothScroll.js
script; user:ovidb, user:wenceslaus, user:tomas-kirda, and user:miro for their answers to javascript-string-encryption-and-decryption; user:paul-fournel and user:mtyson for their answers to how-do-i-make-javascript-beep from which coinBump.js
is based; user:kornel, user:basil-bourque, and user:456584 for their answers to sound-effects-in-javascript-html5; Simple sounds for the coin.ogg
and bump.ogg
answer audio; The Document Foundation for LibreOffice, Poppler Developers for pdftoppm
and Dmitry Groshev, Mark Tyler, Xiaolin Wu et. al. for mtPaint, ImageMagick convert
---these softwares were employed for generating the mcQuiz icon; Colomban Wendling, Nick Teleaven et al. for Geany 1.28 IDE. Much thanks, too, to the Debian Project for the Debian 8 (Jessie) GNU/Linux OS, and GitHub for its generosity in providing space for this project.
mcQuiz by Justine Leon A. Uro is licensed under a Creative Commons Attribution 4.0 International License.
Based on a work at https://github.com/justineuro/mcQuiz