This page is intended to layout how a developer can contribute to dokuwiki.
What's needed to participate

A wiki topic consist of the plain text, some media files …
When a topic is changed one of the following scenarios holds true (
)
The plain text files are stored in UTF-8 encoded format. This is a format most browser support (Is this true?
)
I believe plain text (ascii codes 0-127) fits into the encoding scheme. So machine generated files are valid wiki topics. There are some discussions about system generated topics which is nice if properly authorized.
If scenario 1 holds then one have to compare two different gz files. If scenario 2 holds then one have to uncompress and compare with the latest text version.
caching mechanism
topics
media
The MVC Design Pattern is in my opinion a nice pattern to explain the structure of dokuwiki.
doku.php is the controller.
The model consist of a few aspects
: Is a topic the full path /wiki/development/guide of just guide?)The view is what is rendered and how into the browser.
: Is this the right place. This shouldn't be a darcs crash course
By pulling now and then one gets new updates from the repo. Darcs will tell you how many patches there are and you can choose which ones you want to pull.
darcs pull
It is wise to change one issue, feature at a time. This is because every darcs patch needs a, hopefully useful, name.
Use your favorite editor.
: The editor needs to be UTF-8 compliant.
Check whether your changes were coherent.
darcs whatsnew
Only related changes should be bundled into a patch. Then record your changes and give a good name for the patch.
darcs record
When you want to deliver a patch you can send your patch to Andreas. For this you need a good mail infra.
darcs send
Or when your mail infra is not working or you just want to send your patch by email you can save the patch to a file with
darcs send -o mypatch.patch
and send it as an attachment from anywhere (eg: webmail).