Admin tools: Moodle plugin skeleton generator

Maintained by Picture of David MudrákDavid Mudrák
Allows developers to quickly generate code skeleton for a new Moodle plugin.
388 sites
54 fans
Moodle 3.1, 3.2, 3.3, 3.4, 3.5, 3.6, 3.7, 3.8

This tool allows developers to quickly generate code skeleton for a new Moodle plugin. Relevant code is generated according to defined list of requested plugin features.

The tool provides both web and command line interface.

See the page Plugin skeleton generator docs page for more details.

The initial implementation by Alexandru Elisei as a GSOC 2016 project mentored by David Mudrák.


This plugin is part of set Moodle development.


Screenshot #0
Screenshot #1
Screenshot #2
Screenshot #3


Picture of David Mudrák
David Mudrák (Lead maintainer)
Picture of Alexandru Elisei
Alexandru Elisei: Original author (GSOC 2016 student)
Picture of Geoffrey Van Wyk
Geoffrey Van Wyk
Picture of Ferran Recio Calderó
Ferran Recio Calderó
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
  • Picture of Mike Churchward
    Tue, Apr 25, 2017, 10:03 PM
    It currently doesn't allow you to use 3.2 as the required Moodle version (dropdown). Does that mean we should not use it for 3.2 (or higher) plugin development?
  • Picture of David Mudrák
    Tue, Apr 25, 2017, 11:00 PM

    I believe it just needs to be updated. A pull request at github will be appreciated, or an issue created there at least. Thanks in advance.

  • Picture of David Mudrák
    Fri, Jun 1, 2018, 10:14 PM

    Version 1.1.0 released, allowing to generate privacy API scaffolding. No UI at the moment, manually edited input YAML recipes only. Refer to cli/example.yaml.

  • Picture of steve baxter
    Thu, Apr 25, 2019, 6:09 PM
    I'm probably missing something really obvious here but my generated mod skeleton does not have an install.xml file so has no means to create initial tables. Many thanks in advance.
  • Picture of David Mudrák
    Fri, Apr 26, 2019, 4:49 PM

    Hi Steve. IIRC that is expected behaviour as the XMLDB editor is more appropriate tool to create this file. What I used to do was (1) generate the module's skeleton inside a Moodle installation (2) go directly to the site's /admin/tool/xmldb/ address (that is the annoying part where you have to avoid visiting the Notifications page that would trigger the plugin installation) and (3) create the module's install.xml using the XMLDB and (4) finally install the plugin.

    I agree this is rather cumbersome workflow. Please feel encouraged to report a new feature request so that plugins come with a bare-minimal working install.xml out of the box.

  • Picture of David Mudrák
    Fri, Oct 11, 2019, 6:45 PM

    For the record, the most recent version 1.2.3 has (among other things) the support for generating a minimal db/install.xml implemented. Thanks again Steve for raising it.

Please login to post comments