It's better when it's simple

User Tools

Site Tools


dev Plugin

Compatible with DokuWiki

  • 2020-07-29 "Hogfather" yes
  • 2018-04-22 "Greebo" unknown
  • 2017-02-19 "Frusterick Manners" unknown
  • 2016-06-26 "Elenor Of Tsort" unknown

plugin The DokuWiki Developer's Tool

Last updated on

This command line plugin helps plugin and template developers dealing with the boilerplate required. It can be used to create and extend existing extensions. All required plugin skeletons are auto-downloaded from the DokuWiki plugin wizard.


Install the plugin using the Plugin Manager and the download URL above, which points to latest version of the plugin. Refer to Plugins on how to install plugins manually.


The plugin is called via bin/plugin.php. It has to be called from within the extension's top level directory. Eg. if you want to use it to mange the foo plugin, it has to be called from within lib/plugins/foo. If you want to manage a template named foo, you need to be in lib/tpl/foo.

php ../../../bin/plugin.php dev

The plugin comes with a whole bunch of commands.


Use this to initialize a completely new extension. It will interactively ask for the required info and will create the or as well as a README and LICENSE file.

This has to be called from a completely empty directory! The plugin will initialize a new git repository.

php ../../../bin/plugin.php dev init


Use this command to add a Unit Test. You can give a class name as parameter, or leave it off to simple add the standard GeneralTest.

php ../../../bin/plugin.php dev addTest
php ../../../bin/plugin.php dev addTest Something


This created the configuration files (eg. the conf/ folder) to make your extension configurable via the Configuration Manager.


This adds the English default files for localizing your extension (eg. the lang/en folder).

php ../../../bin/plugin.php dev addLang


Using this command, you can add a new component to your extension. It requires a parameter to specify the type of component you want (auth, admin, syntax, action, renderer, helper, remote or cli). A optional second parameter allows you to specify a component name.

# create a syntax.php:
php ../../../bin/plugin.php dev addComponent syntax
# create a helper/foobar.php
php ../../../bin/plugin.php dev addComponent helper foobar


This creates the deleted.files File for your extension based on previous commits.

php ../../../bin/plugin.php dev deletedFiles


This command will check your extension for files that are no longer needed and deletes them.

php ../../../bin/plugin.php dev rmObsolete
plugin/dev.txt · Last modified: 2021-07-23 20:39 by andi