Framework for Moodle developers