The DokuWiki plugins and templates are managed through its own plugin here at www.dokuwiki.org. A plugin similar to this one but with more flexibility, aimed at usage outside dokuwiki.org, is also available. It's called the data plugin.
Each plugin should have a homepage in the plugin namespace, containing at least a short description and a data block like this at the start:
---- plugin ----
description: Just an example to prove the point
author : Joe Blow
email : joe@example.com
type : syntax, action, admin, helper, render
lastupdate : 2007-12-17
compatible : Anteater, 2010-02-14
depends : plugin1
conflicts : plugin2
similar : plugin3
tags : example, sample
downloadurl: http://github.com/example/dokuwiki-plugin-sample/zipball/master
bugtracker : http://github.com/example/dokuwiki-plugin-sample/issues
sourcerepo : http://github.com/example/dokuwiki-plugin-sample/
donationurl: https://www.paypal.com/...
----
The info is stored in a database and used to build a dynamic repository browser (at plugins).
About the fields:
description – should be a short description of what the plugin does
author – the plugin's main author or current maintainer
email – email address of the plugin's main author or current maintainer
type – one or more of the plugin types (syntax, action, admin, helper, render)
lastupdate – date when newest version of the plugin was provided, in YYYY-MM-DD format
compatible – give the DokuWiki version(s) your plugin is
compatible to. Multiple versions can be given and code names can be used. Eg: 2009-02-14, lemming, anteater. Use a plus sign '+' if you think it's safe to assume that the plugin will be compatible with future releases of DokuWiki.
depends – comma separated list of plugin dependencies if any
conflicts – comma separated list of plugins/templates which conflict your plugin, use template:xxx if conflicting with the template xxx
similar – comma separated list of plugins with a similar task
tags – categorize your plugin here. If !obsolete is the only tag, then this plugin will be hidden from repo table
securitywarning – use this field to warn about inherent security problems with the plugin. Ability to execute arbitrary script could be a reason
securityissue – only add this field when there is a
security problem with the plugin. Enter a short description here and inform the author. Plugin will be hidden from repo table
downloadurl – this should be the direct
URL to the download compatible with the most current release
bugtracker – a link to the bug tracker for this plugin, leave empty if none available
sourcerepo – a link to the webinterface of a source code management system like
git or
darcs, leave empty if none available
donationurl – a link to paypal, an Amazon wishlist or similar thing where people can donate to you, leave empty if none available
Similar for templates, but in the template namespace.
---- template ----
description : Just an example to prove the point
author : Joe Blow
email : joe@example.com
lastupdate : 2007-12-17
compatible : Anteater, 2010-02-14
depends :
conflicts : sample
similar :
screenshot_img: http://<someserver>/image.png
tags : example, sample
downloadurl : http://github.com/example/dokuwiki-plugin-sample/zipball/master
bugtracker : http://github.com/example/dokuwiki-plugin-sample/issues
sourcerepo : http://github.com/example/dokuwiki-plugin-sample/
donationurl : https://www.paypal.com/...
----
The info is stored in a database and used to build a dynamic repository browser (at plugins).
About the fields:
description – should be a short description of the templates main feature
author – the template's main author or current maintainer
email – email address of the template's main author or current maintainer
lastupdate – date when newest version of the template was provided, in YYYY-MM-DD format
compatible – give the DokuWiki version(s) your template is compatible to. Multiple versions can be given and code names can be used. Eg: 2009-02-14, lemming, anteater
depends – comma separated list of template dependencies if any
conflicts – comma separated list of plugins/templates which conflict your template, use template:xxx if conflicting with the template xxx
similar – comma separated list of template with a similar task
screenshot_img –
URL to screenshot of your template
tags – categorize your template here. If !obsolete is the only tag, then this template will be hidden from repo table
securitywarning – use this field to warn about inherent security problems with the template. Ability to execute arbitrary script could be a reason
securityissue – only add this field when there is a
security problem with the template. Enter a short description here and inform the author. Template will be hidden from repo table
downloadurl – this should be the direct
URL to the download compatible with the most current release
bugtracker – a link to the bug tracker for this template, leave empty if none available
sourcerepo – a link to the webinterface of a source code management system like
git or
darcs, leave empty if none available
donationurl – a link to paypal, an Amazon wishlist or similar thing where people can donate to you, leave empty if none available
The manual describes how to use the repository API among other things.
When a new release candidate is available please update the plugin homepage with appropriate compatibility, use the release name (i.e. “rincewind”) rather than the RC date. That way you won't have to update the compatibility information as the final release is done.