MasterMath is an intuitive platform designed for math educators to effortlessly create, customize, and assign timed exercises, quizzes, and problem sets.
The application must meet the following minimum requirements:
- Operating System Compatibility: The application shall be compatible with Windows 7 and Linux 64-bit.
- Download Size Optimization: The application’s installation package shall be optimized for minimal size. The target download size shall be less than 5 MiB to ensure accessibility for users with limited bandwidth.
- Russian language.
- CMake: Install CMake from https://cmake.org/download/. Make sure CMake is added to your system's PATH environment variable.
- Visual Studio build tools: Install Visual Studio build tools with the "Desktop development with C++" workload selected. Ensure the latest Windows SDK is installed.
- Git: Install Git from https://git-scm.com/downloads.
vcpkg is used for managing the project's dependencies.
-
Clone the vcpkg repository:
git clone --depth 1 https://github.com/microsoft/vcpkg cd vcpkg -
Bootstrap vcpkg:
.\bootstrap-vcpkg.bat -
Integrate vcpkg with your user environment:
.\vcpkg integrate install
Use vcpkg to install the required Boost libraries:
vcpkg install boost-json:x64-windows-static boost-nowide:x64-windows-static
vcpkg install muparser:x64-windows-staticvcpkg install boost-test:x64-windows-static-
Install nodejs
-
CMake Configuration and Building Create a build directory (if you haven’t already):
mkdir build
cd buildConfigure the project with CMake, specifying the vcpkg toolchain file:
cmake -DCMAKE_TOOLCHAIN_FILE=<path_to_vcpkg>\scripts\buildsystems\vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x64-windows-static -DCMAKE_BUILD_TYPE=Release ..bash Replace <path_to_vcpkg> with the actual path to your vcpkg installation directory. For example: C:\dev\vcpkg You can also use -DCMAKE_BUILD_TYPE=Debug for debug builds. Build the project:
cmake --build . --config Releasesudo apt install libboost-json1.81-dev libboost-nowide1.81-dev libmuparser-dev
sudo apt install nodejs npm
sudo apt install libboost-test1.81-dev # (optional: for testing)sudo apt install libboost-json-dev libboost-nowide-dev libmuparser-dev
sudo apt install nodejs npm
sudo apt install libboost-test-dev # (optional: for testing)sudo pacman -S muparser boost
sudo pacman -S nodejs npmThe project includes a frontend component that requires specific build steps. These are defined as CMake targets.
cmake --build . --target install-frontend-depsThis target typically handles tasks such as installing Node.js dependencies for the frontend.
cmake --build . --target build-frontendAfter successful builds, you can find the executable files in the build directory, typically under build/Release or build/Debug.
Refer to the project’s documentation for specific instructions on running the application.
The built frontend assets will likely be in a separate frontend specific directory which is also defined in the project’s documentation.