A-Plus grading service that provides course module feedback gathering, response management and analysis. Service expects that A-Plus is configured with correct form layout and layout is requested from A-Plus. MOOC Grader is used to configure A-Plus for this task.
There is a Docker container image available for local testing and development of the system: run-mooc-jutut
- Python 3.8+
- Django 4.2+
- Postgresql 12+
More details of packages in installation documentation.
Read INSTALLATION.md for production installation.
For development, follow production installation guide, but you can install server with your user in development folder and skip nginx and systemd parts.
Create lti login parameters for a-plus in this kind of way:
sudo -H -u jutut sh -c "cd /opt/jutut/mooc-jutut && ../venv/bin/python manage.py add_lti_key -d 'Key for aplus.cs.hut.fi'"
Outputs something like:
Successfully created new lti login key and secret
key: <128 chars of key>
secret: <128 chars of key>
desc: Key for aplus.cs.hut.fi
Input above parameters in lti service form in a-plus admin.
Service url is something in format of https://jutut.cs.hut.fi/accounts/lti_login
.
Activate virtualenv.
Run ./manage.py runserver
.
Go to http://localhost:8000/feedback/test1/
.
To remove or replace the requirement label, use following css snipped as base:
.jutut-exercise .required-label {
/* change how the label is displayed */
color: green;
font-size: 80%;
/* or hide required label so you can replace it with yours */
display: none;
}
.jutut-exercise label.required:after {
/* Commond properties for different languages */
color: #bf2020;
}
/* content string for supported languages */
.jutut-exercise:lang(fi) label.required:after { content: " (*) Pakollinen"; }
.jutut-exercise:lang(en) label.required:after { content: " (*) Required"; }