Ahk stands for automated homework evaluation. This repository contains tools built for enabling automated homework evaluation with the help of GitHub, GitHub Classroom, GitHub Actions. Custom tools running in containers and in Azure serverless services enable management of homework submission, evaluation and grading.
Please refer to https://akosdudas.github.io/automated-homework-evaluation/ for the concept and details.
GitHub Monitor: An Azure function written in .NET with an http webhook registered as a GitHub Application that manages the workflow of homework submissions. Performs automatic actions on repositories acting as submissions and monitors proper usage of pull requests.
Publish Results to PR: A containerized Go application that processes the output of evaluator applications and publishes the results into a pull request for the student to see, as well as forwarding it to the grade management application.
Grade Management: An Azure function written in .NET that accepts events from the other applications and stores them in Azure CosmosDB database. Helps teachers by reducing the administration of tracking the status of submissions and exporting final grades.
Review UI: A Blazor WebAssembly-based website written in .NET for displaying the state of homework submissions and final grades for the teacher.