Features & Development

Moodle/WeBWorK interaction modules

Moodle/WeBWorK interaction modules

by Michael Gage -
Number of replies: 0


I’ve been doing a fair amount of work on plugins that connect Moodle and WeBWorK in various ways.  Updating them so that they workwith Moodle 2.8.5 as well as with the last version of Moodle 1.9.x.  I’ve made considerable progress on two of them.  

 1. The wwassignment and wwlink modules which allow WeBWorK assignment types are polished, still need more testing, but are nearly ready for general release. I invite comments.

 2. The bridge between webwork and Moodle 1.9.x which allows WeBWorK questions to be inserted as part of a Moodle quiz has been resurrected and brought up to date.

 I have also begun to create a similar bridge between Moodle 2.8.5 Quizzes and WeBWorK questions.

Try these out if you have a chance and let me know what you think.


The first plugin allows the inclusion of webwork assignments in a moodle course.   It requires connection to the webservice of a webwork site but the webwork installation doesn’t have to be on the same computer as moodle.   Students who click on a wwassignment from a moodle course are automatically taken to the webwork site, logged in and presented with their assignment.  The grades from their work on the homework assignment are reported back to Moodle the next time the moodle cron job is run.

You can see how these work live at:  

https://devel3.webwork.rochester.edu/moodle/course/view.php?id=21 and at


For the moment you can log in and view these using guest login.  

If you would like the instructors view, or would like to play with your own course send me a note with the login name you wish to use and I’ll create a professor for you.

This version uses Moodle 2.8.5.  There is another version that connects to Moodle 1.9.8 but I’m not sure that anyone uses that much any more.

The modules and instructions that you need to install this capability on your own moodle site (for example the WEPS development machine in Helsinki ) are available at https://github.com/mgage   in the repositories   wwassignment and wwlink.   There are README and INSTALL and CONFIGURE instructions in the wwassignment repository.  I believe these modules are nearly ready for general release —they just need a little more testing. I hope that you will be able to try them on your own site and can let me know if there are still issues. Thanks to Nelson Moller for help in making the final cleanup of the files.


The second plugin is an interim plugin that allows WeBWorK to work as a back end for Moodle 1.9 questions in quizzes.  This is essentially work done by Matt Leventi in 2007 with some additional work by me to bring it up to date with Moodle 1.9.8.   You can view how it works at

https://devel1.webwork.rochester.edu/moodle/course/view.php?id=10   but you will need a full login account — you can’t view quizzes as a guest for some reason.  Let me know if you want an instructor login for this course so that you can see the quiz and play around.

(see attachment for screen shot)

Unfortunately this interaction between the Moodle quiz and WeBWorK only exists for Moodle 1.9.8 at the moment.  I don’t plan to develop this module any further unless I have requests for it since I don’t think Moodle 1.9.8 is widely used.

The repo for this is  https://github.com/mgage/wwmqt


The third plugin is the beginnings of a module that allows WeBWorK to work as a back end for Moodle 2.8.x questions in quizzes.  So far I have  a connectivity test that allows moodle to connect to a webwork connectivity test server.  I think this is the hard part and the connectivity connection is nearly complete. (I have been using Tim Hunt’s opaque server as a model.) 

Next I will starting adding the ability to deliver the contents of webwork questions through this connection.

You can see this at  https://devel3.webwork.rochester.edu/moodle/course/view.php?id=29 

You will need an instructor login for access. (email me for an account)

The repo for the webwork part of this is https://github.com/mgage/opaque_server.  

The moodle side modules are from Tim Hunt and are at:  

https://github.com/mgage/moodle-qtype_opaque  and https://github.com/mgage/moodle-qbehaviour_opaque

-- Mike

Attachment PastedGraphic-2.png