Skip to main content

Raymii.org Raymii.org Logo

Quis custodiet ipsos custodes?
Home | About | All pages | Cluster Status | RSS Feed

Introduction to DokuWiki

Published: 15-06-2011 | Author: Remy van Elst | Text only version of this article


❗ This post is over thirteen years old. It may no longer be up to date. Opinions may have changed.


DokuWiki is a standards compliant, simple to use Wiki, mainly aimed at creating documentation of any kind. It is targeted at developer teams, workgroups and small companies. It has a simple but powerful syntax which makes sure the datafiles remain readable outside the Wiki and eases the creation of structured texts. All data is stored in plain text files no database is required.

Recently I removed all Google Ads from this site due to their invasive tracking, as well as Google Analytics. Please, if you found this content useful, consider a small donation using any of the options below:

I'm developing an open source monitoring app called Leaf Node Monitoring, for windows, linux & android. Go check it out!

Consider sponsoring me on Github. It means the world to me if you show your appreciation and you'll help pay the server costs.

You can also sponsor me by getting a Digital Ocean VPS. With this referral link you'll get $200 credit for 60 days. Spend $25 after your credit expires and I'll get $25!

Nowdays it can be used for a lot of things, like a wiki, note taking, podcast show notes, collaborative note taking and a lot more.

Official website of DokuWiki

Key features of DokuWiki

Revision control

DokuWiki stores all versions of each wiki page, allowing the user to compare the current version with any older version. The difference engine is the same as the one used in MediaWiki. Parallel editing of one page by multiple users is prevented by a locking mechanism.

Access control

Access control can be handled by a user manager which allows users and groups of users to be defined, and an access control list where an admin user can define permissions on page and namespace level, giving it much better access control than Mediawiki.

Plugins

DokuWiki has a generic plugin interface which simplifies the process of writing and maintaining plugins. There are over 750 plugins available. These can be easily integrated and managed by an admin user with the help of the plugin manager.

Templates

The appearance of the wiki can be defined by a template. There are templates to make it resemble a MediaWiki site, or a popular blogging platform and more.

Internationalization and localization

DokuWiki supports Unicode (UTF-8), so languages such as Chinese, Thai, and Hebrew can be displayed. DokuWiki can be configured in about 40 languages.

Caching

DokuWiki stores the rendered output of parsed wiki pages to reduce server load.

Full text search

DokuWiki has an integrated indexed search with which a user can search for keywords on the wiki.

Other very handy and interesting features

  • Content can be categorized in namespaces, easily browsable through an automatic index
  • Uploading and embedding of images and other media (images, PDF, music or anything)
  • Unlimited page revisions
  • Overview of Recent changes
  • Colored side by side diff support
  • Section Editing allows editing of small parts of a page (a feature I use very much)
  • Authentication Backends for integrating with LDAP, MySQL, Postgres and others

Syntax

Below I'll give some examples of the Dokuwiki Syntaxis.

Official Syntax Reference can be found here

Here is a good page with Tips and Tricks for DokuWiki

Headers
====== This is H1 ======
===== This is H2 =====
==== This is H3 ====
=== This is H4 ===
== This is H5 ==
Unordered Lists

Type two spaces and then a star: *

  * first
  * second
    * sub-list
    * sub-item 2
  * third
Ordered Lists

Type two spaces and then a dash: -

  - first ordered
  - second ordered
    - first sub-ordered
  - third item
Quotes
I say this
> I agree with that
>> Well, I do not.
> Why not?
Yeah, why not?
Images
Real size:                        {{wiki:dokuwiki-128.png}}
Resize to given width:            {{wiki:dokuwiki-128.png?50}}
Resize to given width and height: {{wiki:dokuwiki-128.png?200x50}}
Resized external image:           {{http://de3.php.net/images/php.gif?200x50}}

Alignment via left or right whitespaces (or both for center):

{{ wiki:dokuwiki-128.png}}
{{wiki:dokuwiki-128.png }}
{{ wiki:dokuwiki-128.png }}
Horizontal Lines
---
Tables
^ Heading 1      ^ Heading 2       ^ Heading 3          ^
| Row 1 Col 1    | Row 1 Col 2     | Row 1 Col 3        |
| Row 2 Col 1    | some colspan (note the double pipe) ||
| Row 3 Col 1    | Row 3 Col 2     | Row 3 Col 3        |
| Row 4 Col 1    |                 | Row 4 Col 3        |
References & Footnotes

Are done by ((This is a footnote)) using double parentheses.

Links
Internal Links

Done via [[pagename]] or [[pagename|Page Title]].

If you have a namespace: [[namespace:second:page|NameSpace Name]].

External Links

automatically recognized by dokuwiki via: http://www.google.com or www.google.com

With links title: [[http://www.google.com|This link goes to Google]]

Email addresses: <spambox@emaildomain.org> are converted to mailto: links.

Tags: dokuwiki , markup , php , tutorials , wiki