{"id":16558165,"url":"https://github.com/simonschiller/tutorbot","last_synced_at":"2026-06-06T17:32:48.142Z","repository":{"id":54849323,"uuid":"258527428","full_name":"simonschiller/tutorbot","owner":"simonschiller","description":"Command line tool for programming tutors at the University of Applied Sciences in Hagenberg","archived":false,"fork":false,"pushed_at":"2021-01-25T15:24:11.000Z","size":1665,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-01-15T10:58:13.386Z","etag":null,"topics":["command-line-tool","kotlin","university"],"latest_commit_sha":null,"homepage":null,"language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/simonschiller.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-04-24T13:58:06.000Z","updated_at":"2024-05-24T15:15:50.000Z","dependencies_parsed_at":"2022-08-14T04:40:46.752Z","dependency_job_id":null,"html_url":"https://github.com/simonschiller/tutorbot","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simonschiller%2Ftutorbot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simonschiller%2Ftutorbot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simonschiller%2Ftutorbot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simonschiller%2Ftutorbot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/simonschiller","download_url":"https://codeload.github.com/simonschiller/tutorbot/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241945474,"owners_count":20046865,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["command-line-tool","kotlin","university"],"created_at":"2024-10-11T20:09:46.695Z","updated_at":"2026-06-06T17:32:48.114Z","avatar_url":"https://github.com/simonschiller.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://img.shields.io/github/workflow/status/simonschiller/tutorbot/CI)](https://github.com/simonschiller/tutorbot/actions) \n[![GitHub Release](https://img.shields.io/github/v/release/simonschiller/tutorbot)](https://github.com/simonschiller/tutorbot/releases)\n[![License](https://img.shields.io/github/license/simonschiller/tutorbot)](https://github.com/simonschiller/tutorbot/blob/master/LICENSE)\n\n# Tutorbot\n\nTutorbot is a simple command line tool that helps programming tutors at the University of Applied Sciences in Hagenberg by automating repetitive tasks. \n\n### Features\n\nTutorbot comes with a range of different features, it can support you by:\n\n* downloading (and extracting) all submissions for a certain exercise\n* checking submissions for plagiarism\n* downloading all reviews for a certain exercise\n* sending feedback emails to students \n\n### Configuration\n\nTutorbot requires different user inputs, some of them are likely repetitive. To avoid repeating them every time, these inputs can be stored in a configuration file. Currently the configuration file supports the following values:\n\n```properties\n# Moodle username\nusername=Sxxxxxxxxxx\n\n# Download location for submissions\nlocation.submissions=/foo/bar/submissions\n\n# Download location for reviews\nlocation.reviews=/foo/bar/reviews\n\n# Java language version used by JPlag for plagiarism detection (default is Java 1.9)\nplagiarism.language.java.version=java19\n```\n\nFor Tutorbot to detect this file, it should be located in the same directory as the `tutorbot.jar` and should be called `tutorbot.properties`. It is also possible to configure those parameters using environment variables:\n\n| Environment variable | Description |\n| --- | --- |\n| `TUTORBOT_USERNAME` | Moodle username |\n| `TUTORBOT_LOCATION_SUBMISSIONS` | Download location for submissions |\n| `TUTORBOT_LOCATION_REVIEWS` | Download location for reviews |\n| `TUTORBOT_PLAGIARISM_LANGUAGE_JAVA_VERSION` | Java language version used by JPlag for plagiarism detection (default is Java 1.9) |\n\nValues from the properties file will take precedence over values from environment variables if both are specified. \n\n### Buildling this project\n\nTutorbot is built using Gradle. You don't need to install anything, as the Gradle wrapper is included in the repository. To build the project, simply execute `./gradlew jar`, the resulting JAR file will be located under `/build/libs/tutorbot.jar`. Please note that a JDK with version 11 or higher is required to build and run this tool, this limitation comes from JPlag. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimonschiller%2Ftutorbot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsimonschiller%2Ftutorbot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimonschiller%2Ftutorbot/lists"}