Planning activities relative to course meetings - open source Course Activity Planner (with integration to Moodle)

Planning activities relative to course meetings - open source Course Activity Planner (with integration to Moodle)

by Cris Fuhrman -
Number of replies: 0

Along the lines of the needs outlined in https://tracker.moodle.org/browse/MDL-48298 we have now a working (alpha quality) solution at https://github.com/fuhrmanator/course-activity-planner/

The service is not yet on the web (we run it on a private web server), but it is working as a proof of concept. I was able to plan my two courses this summer, each with some 20+ activities in each, and the dates were automatically updated by the tool (so many saved clicks).

The overview from the readme:

CAP overview

Here's how it works: 

  • An iCal file specifies the meeting times of course seminars, labs, etc.
  • The Moodle course, which already has activities created, is backed up to an MBZ file (and uploaded to CAP).
  • The CAP tool parses both these inputs, and presents the info to the instructor:
    Screen shot of CAP tool
    (note the info above is partially in French because that is the language our school uses for Moodle and the calendar plannings)
  • Then the instructor can specify the plan. The plan is a simple language (based a bit on how MS Project tasks are planned), For example:
MQ1 S1F S2S-30m
MH1 S2F S4@23:55 S4@23:55

The first line specifies that Moodle Quiz 1 opens Seminar 1 finishes (S1F) and is closed 30 minutes before Seminar 2 starts (S2S-30m).
The second line specifies that Moodle Homework 1 can be submitted from when Seminar 2 finishes until just before midnight the day of Seminar 4, with no grace period (the third date is the same as the second).
  • There is a preview of the results, and the instructor can download an updated MBZ that can be imported into Moodle again.

As a software engineer, I was reluctant to propose this project as a plug-in to Moodle, due to the complexities of coding in the Moodle environment and the issues with backporting, etc. On the other hand, if and when there's a REST API developed, this proof of concept could be done that way (without using backup files).

If anyone is interested in collaborating, please star/fork the GitHub repo and contact me. Regards,

C. Fuhrman

Average of ratings: -