TWiki vs. PmWiki vs. JSPWiki vs. PukiWiki

General Features TWiki PmWiki JSPWiki PukiWiki
Version
TWiki-6.1.0
2.3.33
2.11.0
1.5.1
Last Release Date
2018-07-15 (5 years ago)
2024-04-20 (28 days ago)
2021-11-21 (2 years ago)
2016-03-06 (8 years ago)
Last Update here
2019-07-19 (4 years ago)
2024-04-21 (27 days ago)
2021-12-01 (2 years ago)
2016-03-23 (8 years ago)
Author
Peter Thoeny, TWiki community
Petko Yotov (Original author: Patrick R. Michaud)
Apache Software Foundation
PukiWiki Development Team
URL
Free and Open Source
Yes
Yes
Yes
Yes
License
GPL
GPL2+
Apache License 2.0
GPL version 2 or (at your option) any later version
Programming Language
Perl, JavaScript
PHP
Java
PHP
Data Storage
Files, RCS
Files
Database, Files
Files
License Cost/ Fee
N/A
0
0
0
Development status
Mature
Mature
Mature
Mature
Intended Audience
Large enterprise; small to medium businesses
All
all
One theme, one PukiWiki
System Requirements TWiki PmWiki JSPWiki PukiWiki
Operating System
Linux, Windows, OS-X and other
Linux, UNIX, Windows, MacOS X, probably others
any platform supporting JDK 1.8+
OS independent
Root Access
No
No
No
No
Webserver
Almost any webserver, typically Apache and Ngnix
Apache, IIS, anything with PHP support. Can also be run w/o a webserver.
Any servlet 3.1 compliant web server, e.g. Tomcat 8.5+, Jetty, Glassfish, Websphere
Apache, IIS, anything with PHP support
Other Requirements
RCS (optional), cron/scheduler, fgrep, egrep; Plugins may have additional dependencies
none
optional JavaMail for mailing functionality
tar with "-p" option, or unzip for install. "mbstring" PHP extension for multi-bite support. backup feature wants 'zip' PHP extension.
Datastorage TWiki PmWiki JSPWiki PukiWiki
Text Files
Yes
Yes
Yes
Yes
MySQL
No
Plugin
Optional
No
PostgreSQL
No
No
Optional
No
Oracle
No
No
Optional
No
SQLite
No
Plugin
Optional
No
BerkeleyDB
No
No
Optional
No
RCS
Yes
Plugin
Plugin
No
Other
RcsLite Perl library for version control without external RCS; backend API for other storage
Compressed, XML and/or ephemeral files (modules). Can provide custom data backends.
JDBC driver must be provided manually; also Page provider architecture -> several implementations
zip-compressed text files for backup (with "zip" PHP extension)
Security/Anti-Spam TWiki PmWiki JSPWiki PukiWiki
Page Permissions
Yes
Yes
Yes
Yes
ACL
Yes
Yes
Yes
Yes
Authentication Backends
Internal authentication; anything Apache supports such as LDAP, NIS, AD, Kerberos
Internal: per page, per group, per user, per user group. External: .htpasswd, LDAP, Active Directory. Plugins: Mailman, forums w/MySQL, oAuth, custom possible.
JAAS -> interface to many external backends possible
LDIF strings compatible with OpenLDAP, LDAP
Host Blocking
Plugin
Optional
Optional
Patch
Mail Encryption
Yes
Optional
Plugin
No
nofollow
Plugin
Yes
Optional
Yes
Blacklist
Plugin
Optional
Yes
Patch
CAPTCHA
Plugin
Plugin
Yes
No
Delayed Indexing
Plugin
Optional
Yes
No
Development/Support TWiki PmWiki JSPWiki PukiWiki
# of Consultants
Preconfigured Hosting
Yes
Yes
No
Yes
Code Repository
Issue Tracker
Mailing List
Support Forum
Chat Channel
Freenode: #jspwiki
#pukiwiki
Stars on GitHub
N/A
N/A
88 ⭐
N/A
Common Features TWiki PmWiki JSPWiki PukiWiki
Preview
Yes
Yes
Yes
Yes
Minor Changes
Yes
Yes
No
No
Change Summary
Yes
Yes
Yes
No
Page History
Yes
Yes
Yes
Yes
Page Revisions
Unlimited
Unlimited
Unlimited
Restricted by Number
Revision Diffs
Between all
Between all
Between all
To current
Sitemap
Yes
Yes
Yes
Yes
Plugin System
Yes
Yes
Yes
Yes
Special Features TWiki PmWiki JSPWiki PukiWiki
Unicode Support
Yes
Yes
Yes
Yes
Right-to-Left Support
No
Optional
Yes
No
Interface Languages
19
Bulgarian, Czech, Danish, German, English, Spanish, Finnish, French, Italian, Japanese, Korean, Dutch, Polish, Portuguese, Russian, Swedish, Ukrainian, 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
10
Breton, German, English, Spanish, Finnish, French, Italian, Dutch, Russian, Chinese
5
German, English, Japanese, Korean, Twi
Email notification
Yes
Optional
Plugin
Yes
Comments
Threaded
Discussion Pages
Flat
Plugin
Categories
Yes
Yes
Yes
No
Namespaces
Yes
Yes
No
No
Conflict Handling
Conflict Resolution
Conflict Resolution
Page Locking
Conflict Detection
Concurrent Editing
Unknown
Yes
Unknown
Unknown
Search
Full Text
Full Text
Full Text
Full Text
Wiki Farming
Optional
Yes
Patch
No
Structured Data
Yes
Yes
Yes
No
Links TWiki PmWiki JSPWiki PukiWiki
CamelCase
Yes
Optional
Yes
Yes
Freelinks
Yes
Yes
Yes
Yes
Backlinks
Yes
Yes
Yes
Yes
InterWiki
Yes
Yes
Yes
Yes
SisterWiki
Plugin
Plugin
No
No
Image Links
Yes
Yes
Yes
Yes
Windows Shares
Plugin
Yes
Optional
Patch
Page Redirects
Plugin
Yes
Yes
No
Syntax Features TWiki PmWiki JSPWiki PukiWiki
HTML Tags
All
Plugin
Optional
Plugin
Math formulas
Plugin
Plugin
Plugin
Plugin
Tables
simple + complex
simple + complex
simple + complex
complex
CREOLE support
No
Optional
Yes
No
Markdown Support
No
Plugin
No
No
Textile Support
Plugin
No
No
No
BBCode Support
No
Plugin
No
No
Emoticon Images
Yes
Plugin
Plugin
Yes
Syntax Highlighting
Plugin
Optional
Yes
Plugin
Footnotes
Plugin
Plugin
Yes
Yes
Quoting
Yes
Plugin
Yes
Optional
Internal Comments
Yes
Yes
Plugin
Yes
Custom styles
Yes
Yes
Yes
Yes
FAQ Tags
Yes
Yes
No
No
Scripting
TWiki Markup Language, TWiki variables, JavaScript, extensive API
MarkupExpressions (core, many add-ons). PageLists with templates (core structured data scripting). WikiSh (plugin), Data forms (optional)
plugins for JavaScript, TCL and Groovy
plugins(PHP), skins(PHP), CSSes(PHP,CSS)
Content Includes
Yes
Yes
Yes
Plugin
Feed Aggregation
Yes
Plugin
Optional
Plugin
Usability TWiki PmWiki JSPWiki PukiWiki
Section Editing
Plugin
Plugin
Yes
Patch
Page Templates
Yes
Yes
Yes
Yes
Double-Click Edit
Plugin
Plugin
No
No
Toolbar
Plugin
Optional
Yes
Patch
WYSIWYG Editing
Yes
Plugin
Yes
No
Access Keys
Yes
Yes
Yes
Yes
Auto Signature
Yes
Yes
Optional
No
Statistics TWiki PmWiki JSPWiki PukiWiki
Recent Changes
Yes
Yes
Yes
Yes
Wanted Pages
No
Optional
Yes
Plugin
Orphaned Pages
Plugin
Optional
Yes
No
Most/Least Popular
Yes
No
No
Plugin
Recent Visitors
Plugin
Plugin
No
No
Analysis
Yes
Plugin
No
No
Output TWiki PmWiki JSPWiki PukiWiki
Printer Friendly
Print View
Print View
Print CSS
Print CSS
Mobile Friendly
Plugin
Yes
Yes
Optional
Themes & Skins
Yes
Yes
Yes
Yes
RSS Feeds
Yes
Optional
Yes
Plugin
ATOM Feeds
Yes
Optional
Yes
Plugin
Abbreviations
Plugin
Plugin
No
No
Auto-TOC
Yes
Optional
Yes
Plugin
Raw Export
Yes
Yes
Yes
Plugin
HTML Export
Yes
Plugin
Optional
No
XML export
Plugin
Plugin
No
No
PDF Export
Plugin
Plugin
Plugin
No
Office Export
Unknown
Plugin
Unknown
Unknown
Media and Files TWiki PmWiki JSPWiki PukiWiki
File Attachments
Yes
Optional
Yes
Plugin
Media Revisions
Yes
Optional
Yes
No
Embedded Flash
Plugin
Plugin
Yes
Plugin
Embedded Video
Plugin
Plugin
Yes
Plugin
Image Editing
Plugin
Plugin
No
Plugin
SVG Editing
Plugin
No
No
No
MindMap Editing
Plugin
Plugin
No
No
Media Search
Contents
Filenames only
Contents
No
Extras TWiki PmWiki JSPWiki PukiWiki
Calendar
Plugin
Plugin
Plugin
Plugin
Image Galleries
Plugin
Plugin
Yes
No
Presentations
Unknown
Plugin
Unknown
Unknown
Forums
Plugin
Plugin
Yes
Optional
Blogs
Plugin
Plugin
Yes
Optional
Ticket System
Plugin
Plugin
No
Optional
Chat
Unknown
No
Unknown
Unknown
Syntax Examples TWiki PmWiki JSPWiki PukiWiki
Internal Link
WikiWord autolink
Otherweb.WikiWord
[[Spaced text]]
[[WikiWord][label]]
[[page name]]
[[page name | link text]]
[[link text -> page name]]
[[#anchor]]
[[#anchor|link to anchor]]
[[page name #anchor]]
[link]
[text|link]
[text|wiki:link]
PageNameAsWikiName
[[PageName]]
[[link text>PageName]]
External Link
http://twiki.org/ autolink
[[http://twiki.org/][label]]
http://....
[[http://... | link text]]
[[link text -> http://...]]
[http://www.example.com/]
[example|http://www.example.com/]
[text|wiki:link]
http://....
[[link text>http://....]]
[[interwiki:keyphrase]]
[[link text>interwiki:keyphrase]]
Headlines
---+ Level 1
---++ Level 2
---+++ Level 3
---++++ Level 4
---+++++ Level 5
---++++++ Level 6
! Level 1
!! Level 2
!!! Level 3
! Level 1
!! Level 2
!!! Level 3
* Level 1
** Level 2
*** Level 3
Bold Format
*bold*
'''bold'''
__bold__
''bold''
Italics Format
_italic_
''italic''
''italics''
'''italic'''
Underline Format
<u>underline</u>
{+underlined+}
%%(text-decoration: underline) text %%
%%%underlined%%%
Monospace Format
=monospaced text= and
<verbatim>
multi line text
</verbatim>
@@monospace@@
{{monospace}}
N/A
Strikethrough Format
<strike>strikethrough</strike>
{-strikethrough-}
%%(text-decoration: line-through) deleted text %%
%%strikethrough%%
Superscript Format
<sup>superscript</sup>
'^superscript^'
%%(vertical-align: sup) text %%
N/A
Subscript Format
<sub>subscript</sub>
'_subscript_'
%%(vertical-align: sub) text %%
N/A
Images
%ATTACHURL%/image.png
http://any.domain/image.png
https://foo.bar/foo.jpg
Attach:foo.jpg
Attach:foo.jpg"alt/title text" | Caption
[local.jpg]
[{Image src='local.jpg'}]
[{Image src='http://foo.bar/foo.jpg'}]
#ref(pagename/filename[,option])
&ref(pagename/filename[,option]);
&ref(http://foo.bar/foo.jpg[,option]);
http://foo.bar/foo.jpg
Aligning Text
| left |   center   |   right |
or HTML
or CSS
%center% centered text
%right% right aligned
%lfloat% left floating text
%rfloat% right floating text
%rframe% right floating frame
%lframe% left floating frame
%%(text-align: right) text %%
CENTER:center
RIGHT:right
LEFT:left
Text Indentation
<blockquote>
multi line text
</blockquote>
-> indented text
--> more indentation
-< hanging text
--< more indentation
%%(text-indent: 20px) 20 pixels %%
%%(text-indent: 30%) 30 percent %%
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
* Item 1
** Item 1.1
* Item 2
- Item 1
-- Item 1.1
- Item 2
Numbered Lists
1. Item 1
a. Item 1.a
1. Item 2
# Item 1
## Item 1.1
# Item 2
alternatively, indented:
# Item 1
# Item 1.1
# Item 2
# Item 1
## Item 1.1
# Item 2
+ Item 1
++ Item 1.1
+ Item 2
Definition Lists
$ Term: Definition
: term : definition
;term:definition
:term|definition
Horizontal Rule
---
----
----
--------------------
remove TWiki remove PmWiki remove JSPWiki remove PukiWiki