This repository contains the source code for the CodeGrader. The CodeGrader is an application that provides functionality for automatic Code Grading (Execution and Evaluation in a sandbox environment) with User Management.
- Create Tasks with Attachments for Users to download
- Create and manage Users and their specific Access to Tasks
- Let Users upload their Solution to tasks
- Automatically execute and test the submitted Code
- Provide Administrators and Users with Feedback to the Submission
- Gamification for the Users after submitting Solution
- Multi-Client Capability for running multiple classes or even schools on one instance of the CodeGrader
- High-Avaiability ready
- automated deployment with ansible
- stable and easy to maintain
With the solution to these Use-Cases the CodeGrader is a good solution for any computer science teacher who wants to provide theirs students with the possibility for lots of hands-on training without long manual and repetitve correction work required.
For more detailed information on how to setup this Project please visit the doc Folder.
This project is created as a Bachelor Thesis at the University of Bern in 2023/2024.
For running the application you can find a detailed Guid in the doc folder for a complete guide.
The Deployment has been tested on Linux Debian 11 and Linux Debian 12.
The CodeGrader is implemented using multiple technologies.
The main functionality is written in Python with Flask and HTML Templates, Bootstrap and Javascript for the frontend.
If you have any questions about the application and its features, feel free to get in touch.
E-Mail: [email protected]
This application is avaible under the GNU AFFERO GENERAL PUBLIC LICENSE Version 3.