Open source assessment software using Angular.js, Play, and Handy. Initially supporting group critiques.
When I wrote it, it had few unusual requirements. For instance students were already in groups, and had GitHub accounts, but did not have accounts on Assessory. This led to the somewhat unusual "Pre-enrol" and "Group pre-enrol" features.
The original application was written in a week for DECO2800 at The University of Queensland.
So if you find it doesn't do what you need, raise an issue and it probably won't take very long to make it do what you want.
- Download the distribution zip file
- Unpack the zip file
- Set the environment variables for your database config and social logins (see below)
- Run the
bin/assessory
script from the zip file. You might need to give it execute permissions usingchmod u+x bin/assessory
, and should run it usingnohup
so that the process won't terminate when you close the shell. - The server will now be running, listening on port 9000
Setting up Assessory requires
- MongoDB (either locally or remote)
- sbt, the Scala Build Tool. version 0.13 or higher.
- A Java virtual machine
- Clone the repository
sbt dist
. This builds the "distribution package" -- a zipfile of everything you need. sbt will automatically locate and download the required dependencies.- Unpack the zip file
- Set the environment variables for your database config and social logins (see below)
- Run the
bin/assessory
script from the zip file. You might need to give it execute permissions usingchmod u+x bin/assessory
, and should run it usingnohup
so that the process won't terminate when you close the shell. - The server will now be running, listening on port 9000
To make Assessory listen using HTTPS, you'll need to pass a few more parameters to the start script, as described here
The following environment variables configure the MongoDB connection:
$ASSESSORY_MONGO_URL
$ASSESSORY_MONGO_DBNAME
$ASSESSORY_MONGO_DBUSER
$ASSESSORY_MONGO_DBPWD
These can also be set by passing them as arguments to the start script
-Dmongo.connection=
-Dmongo.dbname=
-Dmongo.dbuser=
-Dmongo.dbpwd=
Students can log in using GitHub or Twitter accounts.
For this to work, you'll need to set an OAuth client key and secret that is issued to you by GitHub or Twitter.
GitHub:
-
Register an application on GitHub
The authorisation callback URL is
{your server URL}
+/oauth/github/callback
-
Set the Client ID and Client Secret before starting Assessory. This can be done by setting these environment variables
${ASSESSORY_AUTH_GITHUB_CKEY}
${ASSESSORY_AUTH_GITHUB_CSECRET}
or by passing them as arguments to the start script
-Dauth.github.ckey=
-Dauth.github.csecret=
Twitter:
-
Register an application on Twitter
The authorisation callback URL is
{your server URL}
+/oauth/twitter/callback
-
Set the Client ID and Client Secret before starting Assessory. This can be done by setting these environment variables
${ASSESSORY_AUTH_TWITTER_CKEY}
${ASSESSORY_AUTH_TWITTER_CSECRET}
or by passing them as arguments to the start script
-Dauth.twitter.ckey=
-Dauth.twitter.csecret=