Codemaze is an advanced platform specifically designed to enhance the programming education experience in higher education. Providing a virtual environment for code execution, Codemaze allows users to practice, test, and evaluate their programs across various programming languages. Furthermore, the software integrates powerful features including plagiarism detection reports, detailed logging capabilities, and Swagger documentation for easy reference. With support for adding programming languages, customizable configurations, and flexible architecture built on Docker containers, Codemaze empowers both instructors and higher education students to collaboratively and efficiently explore the realm of programming.
This is the suggested frontend to run with the Codemaze backend.
You must have installed in the host machine before deploying or in your local machine before running:
- Docker - used to manage and host the app.
Clone this repository in the host machine.
You have to create an environment file on the root directory named .env
with keys for the API URL (if you haven't changed it when deploying Codemaze, it'll be your_ip:8080
) and school name:
REACT_APP_API_URL="0.0.0.1:8080"
REACT_APP_SCHOOL_NAME="My School"
make build
make deploy
By doing this, Codemaze-Web will be running in the :80
port. You can customize the port by updating the Makefile.
You can run Codemaze-Web locally for debugging and testing purposes.
Navigate to the root folder and run:
make build-debug
make debug
You must have a .env
file in the same way as the .env (deploy) one.
To stop and remove the Docker containers, you can run:
make stop-deploy # if deploy
make stop-debug # if debugging
- Add task title on the report screen
Introduced by Danilo Cleber Becke in 2023, the BSD 2-Clause License outlines the terms under which the software can be utilized and distributed. Users are free to modify the software, as long as they adhere to two main conditions: 1) they must include the original copyright notice and a list of conditions, and 2) if they distribute the software in binary form, they must reproduce the copyright notice and conditions in the documentation or accompanying materials. The copyright holder and contributors are not liable for any direct, indirect, incidental, consequential, or other damages arising from the use of the software, regardless of the legal theory applied.
Developed using React with TypeScript.
- @altostra/type-validations
- dayjs
- Docker
- i18next
- i18next-browser-languagedetector
- @mui/icons-material
- @mui/material
- @mui/x-charts
- @mui/x-date-pickers
- react-i18next
- react-router-dom
- serve
You can reach me at [email protected] and http://linkedin.com/in/danilobecke/.