DokuWiki vs. PmWiki vs. Oddmuse vs. Hatta vs. PukiWiki

General Features DokuWiki PmWiki Oddmuse Hatta PukiWiki
Version
2025-05-14b "Librarian"
2.7.1
2.3.13
1.6.6
1.5.1
Last Release Date
2025-09-09 (10 months ago)
2026-07-24 (2 days ago)
2018-09-04 (7 years ago)
2015-08-29 (10 years ago)
2016-03-07 (10 years ago)
Last Update here
2026-03-25 (4 months ago)
2026-07-24 (2 days ago)
2018-10-27 (7 years ago)
2015-08-29 (10 years ago)
2016-03-23 (10 years ago)
Author
Andreas Gohr
Petko Yotov (Original author: Patrick R. Michaud)
Alex Schroeder
Radomir Dopieralski
PukiWiki Development Team
URL
Free and Open Source
Yes
Yes
Yes
Yes
Yes
License
GPL 2
GPL2+
GPL
GPL v2
GPL version 2 or (at your option) any later version
Programming Language
PHP
PHP
Perl
Python
PHP
Data Storage
Files
Files
Files
Files, RCS
Files
License Cost/ Fee
0
0
free
0
0
Development status
Mature
Mature
Mature
Mature
Mature
Intended Audience
personal, small to medium companies
All
family people, hackers
One theme, one PukiWiki
System Requirements DokuWiki PmWiki Oddmuse Hatta PukiWiki
Operating System
Linux, UNIX, Windows, MacOS X, probably others
Linux, UNIX, Windows, MacOS X, probably others
Anything supported by Perl
Linux, Unix, Windows, MacOSX
OS independent
Root Access
No
No
No
No
No
Webserver
Apache, IIS, Nginx, Lighttpd, anything with PHP support
Apache, IIS, anything with PHP support. Can also be run with PHP's built-in webserver.
Anything supporting CGI scripts
Standalone, WSGI, FastCGI, CGI
Apache, IIS, anything with PHP support
Other Requirements
none
Writable data directory
Mercurial
tar with "-p" option, or unzip for install. "mbstring" PHP extension for multi-bite support. backup feature wants 'zip' PHP extension.
Datastorage DokuWiki PmWiki Oddmuse Hatta PukiWiki
Text Files
Yes
Yes
Yes
Yes
Yes
MySQL
No
Plugin
No
No
No
PostgreSQL
No
No
No
No
No
Oracle
No
No
No
No
No
SQLite
No
Plugin
No
Optional
No
BerkeleyDB
No
No
No
No
No
RCS
No
Plugin
No
Yes
No
Other
None
Compressed, XML and/or ephemeral files (modules). Can provide custom data backends.
No
Plain text files in Mercurial repository, with SQLite index
zip-compressed text files for backup (with "zip" PHP extension)
Security/Anti-Spam DokuWiki PmWiki Oddmuse Hatta PukiWiki
Page Permissions
Yes
Yes
Yes
Yes
Yes
ACL
Yes
Yes
No
No
Yes
Authentication Backends
Textfile, LDAP, MySQL, PostgreSQL, ActiveDirectory
Internal: per page, per group, per user, per user group. External: .htpasswd, LDAP, Active Directory. Plugins: Mailman, forums w/MySQL, oAuth, custom possible.
None (use your web server instead)
n/a
LDIF strings compatible with OpenLDAP, LDAP
Host Blocking
Plugin
Optional
Yes
No
Patch
Mail Encryption
Optional
Optional
No
Yes
No
nofollow
Optional
Yes
No
No
Yes
Blacklist
Optional
Optional
Optional
No
Patch
CAPTCHA
Plugin
Plugin
Plugin
Optional
No
Delayed Indexing
Optional
Optional
No
No
No
Development/Support DokuWiki PmWiki Oddmuse Hatta PukiWiki
# of Consultants
Preconfigured Hosting
Yes
Yes
Yes
No
Yes
Code Repository
Issue Tracker
Mailing List
Support Forum
Chat Channel
#wiki at freenode.net
#pukiwiki
Stars on GitHub
4691 ⭐
N/A
89 ⭐
N/A
N/A
Common Features DokuWiki PmWiki Oddmuse Hatta PukiWiki
Preview
Yes
Yes
Yes
Yes
Yes
Minor Changes
Yes
Yes
Yes
Yes
No
Change Summary
Yes
Yes
Yes
Yes
No
Page History
Yes
Yes
Yes
Yes
Yes
Page Revisions
Unlimited
Unlimited
Restricted by Age
Unlimited
Restricted by Number
Revision Diffs
Between all
Between all
Between all
Between all
To current
Sitemap
Yes
Yes
Yes
Yes
Yes
Plugin System
Yes
Yes
Yes
No
Yes
Special Features DokuWiki PmWiki Oddmuse Hatta PukiWiki
Unicode Support
Yes
Yes
Yes
Yes
Yes
Right-to-Left Support
Yes
Optional
Optional
Optional
No
Interface Languages
68
Afrikaans, Arabic, Azerbaijani, Byelorussian, Bulgarian, Bengali; Bangla, Catalan, Czech, Welsh, Danish, German, Greek, English, Esperanto, Spanish, Estonian, Basque, Persian, Finnish, Faroese, French, Frisian, Galician, Hebrew, Hindi, Croatian, Hungarian, Interlingua, Indonesian, Icelandic, Italian, Japanese, Georgian, Kazakh, Cambodian, Kannada, Korean, Kurdish, Latin, Lithuanian, Latvian, Lettish, Malagasy, Macedonian, Malayalam, Marathi, Malay, Nepali, Dutch, Norwegian, Polish, Portuguese, Brazilian Portuguese, Romanian, Russian, Sinhalese, Slovak, Slovenian, Albanian, Serbian, Swedish, Tamil, Thai, Turkish, Ukrainian, Uzbek, Vietnamese, Chinese, Chinese Traditional
38
Arabic, Bulgarian, Breton, Catalan, Czech, Danish, German, Greek, English, Esperanto, Spanish, Persian, Finnish, French, Hungarian, Indonesian, Italian, Japanese, Lithuanian, Latvian, Lettish, Macedonian, Dutch, Norwegian, Polish, Portuguese, Brazilian Portuguese, Romanian, Russian, Slovak, Slovenian, Albanian, Swedish, Tamil, Turkish, Ukrainian, Vietnamese, Chinese, Chinese Traditional
18
Bulgarian, German, Spanish, Finnish, French, Hebrew, Italian, Korean, Dutch, Polish, Portuguese, Romanian, Russian, Serbian, Swedish, Ukrainian, Chinese, Chinese Traditional
15
Arabic, Czech, Danish, German, Greek, English, Spanish, Estonian, Finnish, French, Hungarian, Japanese, Polish, Russian, Swedish
5
German, English, Japanese, Korean, Twi
Email notification
Optional
Optional
Plugin
No
Yes
Comments
Plugin
Discussion Pages
Discussion Pages
No
Plugin
Categories
Plugin
Yes
Plugin
Yes
No
Namespaces
Yes
Yes
Plugin
Optional
No
Conflict Handling
Page Locking
Conflict Resolution
Conflict Resolution
Conflict Resolution
Conflict Detection
Concurrent Editing
No
Yes
No
Unknown
Unknown
Search
Full Text
Full Text
Full Text
Full Text
Full Text
Wiki Farming
Plugin
Yes
Plugin
Optional
No
Structured Data
Plugin
Yes
Plugin
No
No
Links DokuWiki PmWiki Oddmuse Hatta PukiWiki
CamelCase
Optional
Optional
Optional
Optional
Yes
Freelinks
Yes
Yes
Optional
Yes
Yes
Backlinks
Yes
Yes
Plugin
Yes
Yes
InterWiki
Yes
Yes
Yes
No
Yes
SisterWiki
No
Plugin
Plugin
No
No
Image Links
Yes
Yes
Plugin
Yes
Yes
Windows Shares
Yes
Yes
Plugin
No
Patch
Page Redirects
Plugin
Yes
Yes
No
No
Syntax Features DokuWiki PmWiki Oddmuse Hatta PukiWiki
HTML Tags
Optional
Plugin
Plugin
None
Plugin
Math formulas
Plugin
Plugin
Plugin
Optional
Plugin
Tables
simple
simple + complex
simple + complex
simple
complex
CREOLE support
Plugin
Optional
Plugin
Yes
No
Markdown Support
Plugin
Plugin
Plugin
No
No
Textile Support
Plugin
No
No
No
No
BBCode Support
Plugin
Plugin
Plugin
No
No
Emoticon Images
Yes
Plugin
Optional
Optional
Yes
Syntax Highlighting
Yes
Optional
Plugin
Optional
Plugin
Footnotes
Yes
Plugin
Plugin
No
Yes
Quoting
Yes
Plugin
Optional
Yes
Optional
Internal Comments
Plugin
Yes
No
No
Yes
Custom styles
Plugin
Yes
Yes
Yes
Yes
FAQ Tags
Plugin
Yes
Plugin
No
No
Scripting
Optional, PHP
MarkupExpressions (core, many add-ons). PageLists with templates (core structured data scripting). WikiSh (plugin), Data forms (optional)
Perl
JavaScript
plugins(PHP), skins(PHP), CSSes(PHP,CSS)
Content Includes
Plugin
Yes
Yes
No
Plugin
Feed Aggregation
Yes
Plugin
Yes
No
Plugin
Usability DokuWiki PmWiki Oddmuse Hatta PukiWiki
Section Editing
Yes
Plugin
No
No
Patch
Page Templates
Yes
Yes
No
No
Yes
Double-Click Edit
Plugin
Plugin
Plugin
Yes
No
Toolbar
Yes
Optional
Plugin
No
Patch
WYSIWYG Editing
Plugin
Plugin
Plugin
No
No
Access Keys
Yes
Yes
Yes
No
Yes
Auto Signature
Yes
Yes
Plugin
No
No
Statistics DokuWiki PmWiki Oddmuse Hatta PukiWiki
Recent Changes
Yes
Yes
Yes
Yes
Yes
Wanted Pages
Plugin
Optional
Plugin
Yes
Plugin
Orphaned Pages
Plugin
Optional
Plugin
Yes
No
Most/Least Popular
Plugin
No
No
No
Plugin
Recent Visitors
Plugin
Plugin
Plugin
No
No
Analysis
Plugin
Plugin
No
No
No
Output DokuWiki PmWiki Oddmuse Hatta PukiWiki
Printer Friendly
Print CSS
Print View
Print CSS
Print CSS
Print CSS
Mobile Friendly
Yes
Yes
Yes
Yes
Optional
Themes & Skins
Yes
Yes
Optional
Optional
Yes
RSS Feeds
Yes
Optional
Yes
No
Plugin
ATOM Feeds
Yes
Optional
Plugin
Yes
Plugin
Abbreviations
Yes
Plugin
Yes
No
No
Auto-TOC
Yes
Optional
Plugin
No
Plugin
Raw Export
Yes
Yes
Yes
Yes
Plugin
HTML Export
Yes
Plugin
Yes
No
No
XML export
No
Plugin
No
No
No
PDF Export
Plugin
Plugin
Plugin
No
No
Office Export
Plugin
Plugin
No
Unknown
Unknown
Media and Files DokuWiki PmWiki Oddmuse Hatta PukiWiki
File Attachments
Yes
Optional
Optional
Yes
Plugin
Media Revisions
Yes
Optional
Yes
Yes
No
Embedded Flash
Yes
Plugin
No
No
Plugin
Embedded Video
Yes
Plugin
No
No
Plugin
Image Editing
No
Plugin
No
No
Plugin
SVG Editing
Plugin
Plugin
Plugin
No
No
MindMap Editing
Plugin
Plugin
No
No
No
Media Search
Filenames only
Filenames only
Filenames only
Filenames only
No
Extras DokuWiki PmWiki Oddmuse Hatta PukiWiki
Calendar
Plugin
Plugin
Plugin
No
Plugin
Image Galleries
Plugin
Plugin
No
No
No
Presentations
Plugin
Plugin
No
Unknown
Unknown
Forums
No
Plugin
No
No
Optional
Blogs
Plugin
Plugin
Optional
No
Optional
Ticket System
Plugin
Plugin
No
No
Optional
Chat
No
No
No
Unknown
Unknown
Syntax Examples DokuWiki PmWiki Oddmuse Hatta PukiWiki
Internal Link
[[a Link]]
[[namespace:link]]
[[link|With a Title]]
[[page name]]
[[page name | link text]]
[[link text -> page name]]
[[#anchor]]
[[#anchor|link to anchor]]
[[page name #anchor]]
optional, default on:
[[page name]]

optional, default off:
PageName
[PageName] → [1]
[[[page name]]] → [1]
[PageName text] → text
[[page name|text]] → text

Depending on plugins:
[text](page) → text
[[link]]
[[link|label]]
PageNameAsWikiName
[[PageName]]
[[link text>PageName]]
External Link
[[http://example.com]]
[[http://example.com|With a Title]]
http://....
[[http://... | link text]]
[[link text -> http://...]]
http://example.com/
[http://example.com/] → [1]

optional, default on:
[http://example.com/ text] → text

Depending on plugins:
[text](http://example.com/) → text
http://example.com
[[http://example.com]]
[[http://example.com|label]]
[[http://example.com|{{image}}]]
http://....
[[link text>http://....]]
[[interwiki:keyphrase]]
[[link text>interwiki:keyphrase]]
Headlines
====== Level 1 ======
===== Level 2 =====
==== Level 3 ====
=== Level 4 ===
== Level 5 ==
! Level 1
!!#anchor Level 2
!!! Level 3
Depending on plugins:
## two
### three
== two ==
=== three ==

section
=======

subsection
----------
= h1 =
== h2 ==
...
===== h5 =====
* Level 1
** Level 2
*** Level 3
Bold Format
**bold**
'''bold'''
Depending on plugins:
*bold*
**bold*
'''bold'''
**bold**
''bold''
Italics Format
//italics//
''italic''
Depending on plugins:
*italic*
/italic/
//italic//
''italic''
//italic//
'''italic'''
Underline Format
__underlined__
{+underlined+}
Depending on plugins:
_underline_
__underline__
n/a
%%%underlined%%%
Monospace Format
''monospace''
@@monospace@@
Depending on plugins:
`mono`
##mono##
[code]mono[/code]
<tt>mono</tt>
<code>mono</code>
{{{verbatim}}}
N/A
Strikethrough Format
<del>strikethrough</del>
{-strikethrough-}
via bbCode plugin:
[s]strike through[/s]
n/a
%%strikethrough%%
Superscript Format
<sup>superscript</sup>
'^superscript^'
via bbCode plugin:
[sup]superscript[/sup]
n/a
N/A
Subscript Format
<sub>subscript</sub>
'_subscript_'
via bbCode plugin:
[sub]subscript[/sub]
n/a
N/A
Images
{{local.jpg}}
{{http://foo.bar/baz.jpg}}
https://foo.bar/foo.jpg
Attach:foo.jpg
Attach:foo.jpg"alt/title text" | Caption
http://example.com/pic.jpg

Depending on plugins:
[[image:Name|Text|URL]] and variants
![text](URL)
{{image}}
{{image|alt}}
#ref(pagename/filename[,option])
&ref(pagename/filename[,option]);
&ref(http://foo.bar/foo.jpg[,option]);
http://foo.bar/foo.jpg
Aligning Text
Plugin
%center% centered text
%right% right aligned
%lfloat% left floating text
%rfloat% right floating text
%rframe% right floating frame
%lframe% left floating frame
no example known
n/a
CENTER:center
RIGHT:right
LEFT:left
Text Indentation
N/A
-> indented text
--> more indentation
-< hanging text
--< more indentation
Depending on plugins:
> text

[quote]
text
[/quote]

: one
:: two
n/a
N/A
Bulleted Lists
* item 1
* item 1.1
* item 2
* Item 1
** Item 1.1
* Item 2
alternatively, indented:
* item 1
* item 1.1
* item 2
* one
** two
* list
** sublist
- Item 1
-- Item 1.1
- Item 2
Numbered Lists
- item 1
- item 1.1
- item 2
# Item 1
## Item 1.1
# Item 2
alternatively, indented:
# Item 1
# Item 1.1
# Item 2
Depending on plugins:
1. one
2. two

# one
## two
n/a
+ Item 1
++ Item 1.1
+ Item 2
Definition Lists
Plugin
: term : definition
Depending on plugins:
; term: definition
n/a
:term|definition
Horizontal Rule
----
----
Depending on plugins:
----
----
--------------------
remove DokuWiki remove PmWiki remove Oddmuse remove Hatta remove PukiWiki