This is an implementation of an online judge that can be used for conducting programming contests as well as managing assignments in a university.
Apart from the facilities of usual programming contest portals, this portal provides facilities which are well suited for assignment submission.
These additional features include: Instructor (Problem poster) grades above judge scores, soft and hard deadlines for assignments including penalties, customizable compilation and test script, linter scores et cetera.
Currently, the judge supports 5 languages: C, C++, Python, Go and Haskell but this list can be extended easily.
To run this application, you will require Python 3.6 or above. While we tested this primarily with Python 3.6 or above, we expect it to work for other Python versions > 3 that support Django 3.1.6.
Other primary requirements are specified in requirements.txt. To setup documentation locally, please check the requirements specified in docs/requirements.txt.
The instructions to setup and run this application are specified in our documentation.
If you are interested in understanding how autojudge
works, please find the API documentation here.
This code is licensed under MIT.