DokuWiki has a flexible plugin API which allows to extend its functionality, be it additional syntax modes, custom action modes, new export formats and a lot more. Depending on the plugin's purpose, a plugin can either consist of one, or more, of the following plugin types.
At the moment DokuWiki features five different plugin types.
A Wizard to create the basic skeleton for a DokuWiki plugin can be found at http://dwpluginwiz.chimeric.de/ and is recommended to be used for starting the development.
If you later need to extend your plugin refer to the Plugin File Structure on how files are arranged in a plugin.
If you created a plugin, please share it with the community. Just create a page named after your plugin in the plugin namespace. Eg. if your pluginfolder is named sample create a page plugin:sample here in the wiki.
The page should contain all needed documentation on how to install and use the plugin and give users a pretty good idea what it does before installing the plugin. Adding screenshots might be a good idea as well1).
At the top of the plugin page a few metadata fields have to be filled. A description of each field can be found here.
Uploads are not allowed on dokuwiki.org, so you need to host your plugin files somewhere else. We recommend to manage your source with a Revision Control System like git. If you do, it's easiest to use a public repository host like Github which offers also a bug tracker for your repository.
Plugin Survey 2009 is a developers overview of all plugins present in the plugin namespace of www.dokuwiki.org. Data was collected by an automated script 2009-08-13 with some additional manual data refining and mining. A total of 562 pages was examined containing 539 plugins. Source code for 456 plugins (85%) was downloaded and analyzed.