The Challenge: A gauntlet of 14 mathematics questions that are to be solved within 15 minutes.
The Challenge is a web app which creates 14 mathematics questions which is to be solved within 15 minutes, whilst the tune of Edvard Grieg's Peer Gynt Suite No. 1, Op. 46 plays in the background.
The 14 questions will test on different aspects of mathematics, ranging from simple arithmetic to algebra to logarithms to basic calculus.
- Navigate to this folder (
dist
) that is in the root directory. - Download the
.tar.gz
file that is in that folder. (e.g.The-Challenge-Production-Server_1.0.0a0.dev0.tar.gz
) - Extract the contents of that
.tar.gz
file. - Follow the instructions of
Production Server Installation Instructions.txt
which can be found in the extracted contents of the.tar.gz
file.
- Download the whole repository as a
.zip
file.- You can do so by clicking this link
- Extract the contents of that
.zip
file. - Navigate to the root directory of The Challenge:
cd PATH/TO/ROOT/DIRECTORY
- (Optional) You may choose to use a virtual environment to install the dependencies of The Challenge.
- On Ubuntu/Linux, before creating the virtual environment, you may need to run:
sudo apt-get install python3-venv
- Create a virtual environment (
venv
) using the following command:python3 -m venv venv --prompt NAME_OF_VIRTUAL_ENV
- On Ubuntu/Linux, before creating the virtual environment, you may need to run:
- Install all dependencies of The Challenge by running:
pip3 install -r requirements.txt
- You may run a development server by executing the file
the_challenge/__init__.py
or by running the command:python3 the_challenge/__init__.py
(Optional) If you want to use the JavaScript Obfuscator System that is built-into The Challenge, you will need to follow the following instructions.
- Install the NodeJS Package Manager (
npm
).- Installation instructions can be found here.
- Install the
javascript-obfuscator
package from thenpm
by running:npm install --save-dev javascript-obfuscator
- You now need to link the
javascript-obfuscator
package to the command line. Do this by running:npm link javascript-obfuscator
- Check that the obfuscator is working by first creating a dummy JavaScript file:
and then by running:
printf "function hi(){console.log('Hello World!');}hi();" >> sample.js
If a file namedjavascript-obfuscator sample.js
sample-obfuscated.js
was created, you are good to go. If not, review the steps again.
This project is licensed under the MIT license.
The licenses of the software used can be found in the licenses.html
file.