Clone this wiki locally

Welcome to MarkUs

MarkUs is a web application for the submission and grading of student programming assignment. The primary purpose of MarkUs is to provide TAs with simple tools that will help them to give high quality feedback to students. MarkUs also provides a straight-forward interface for students to submit their work, form groups, and receive feedback. The administrative interface allows instructors to manage groups, organize the grading, and release grades to students.

Since 2008, more than 120 undergraduate students have participated in the development of MarkUs; some as full-time summer interns, but most working part time on MarkUs as a project course. The fact that we have have uncovered so few major bugs, and that MarkUs has been so well-received by instructors is a testament to the high quality work of these students. MarkUs is used in more than a dozen courses at the University of Toronto, in several courses at the University of Waterloo, and at École Centrale Nantes (in French).

MarkUs is written using Ruby on Rails, and uses Subversion (with a Git back-end in progress) to store the student submissions.

Getting started:

MarkUs is a Ruby on Rails application. Thanks to various dependencies and the fact that all the current production servers run on Linux servers, all development is done on Linux. Because virtual machines are easy to install, this has become the most popular option.

We have never had success getting a development environment installed on Windows, and more recently we have not been able to compile subversion ruby bindings on OSX, leaving Linux as the only development environment.

You have two main options. The first is to use vagrant to download a pre-configured virtual machine that has most of the required software installed on it. The second is to set up your own virtual machine. You should follow one of the the two installation guides below.