Oddmuse
Oddmuse is a wiki engine. It is free software, licensed under the GNU General Public License. Oddmuse is based on UseModWiki version 0.92, and many patches published on the UseMod site. The programs have diverged since the fork. Oddmuse is being developed by Alex Schroeder .
Oddmuse features
The core wiki engine consists of a single Perl script, which is intended to be kept shorter than 4,000 lines. More features can be added with modules (extensions).
Pages in an Oddmuse wiki are stored in a flat file database, i.e. ordinary files. The structure was chosen to simplify the Oddmuse architecture.
Oddmuse aims to have all the features required to run multilingual sites. It has Unicode support out-of-the-box. A module allows users to specify the language of paragraphs, and to see only the text written in the languages they understand. Also language tags are supported. There is an ongoing effort to translate Oddmuse documentation into multiple languages.
Oddmuse is also developed as a suitable content managing system for weblogs. The combination of a wiki and weblog is sometimes called a Bliki. Oddmuse has several modules for bloggers, like calendar, comment pages and special weblog extensions. The developer thinks it now contains all the necessary features for blogging.
The markup of Oddmuse wiki resembles UseMod markup. Some features can be turned off, and others added with a few modules like LaTeX support.
Oddmuse should produce valid XHTML 1.0 Strict web pages.
Oddmuse was the first wiki engine to implement page clusters. When one or more pages in a page cluster change, only the central cluster page shows up in recent changes. You can see the changes in detail in the central cluster page.
References
- Alex Schroeder: Diary
External links
- Official site
- The Emacs Wiki is the most prominent Oddmuse-based wiki
PhpWiki
PhpWiki is a web-based wiki software application. It began as a clone of WikiWikiWeb and was the first wiki written in PHP. PhpWiki has been used to edit and format paper books for publication.
History
The first version, by Steve Wainstead, was in December 1999 and was the first Wiki written in PHP to be publicly released. The first version ran under PHP 3.x and ran on DBM files only. It was a feature-for-feature reimplementation of the original WikiWikiWeb at c2.com.
In early 2000 Arno Hollosi contributed a second database library to run PhpWiki on MySQL. From then on the features and contributions started to grow, including a templating system, color diffs, rewrites of the rendering engine and much more. Arno was interested in running a wiki for the game Go.
Jeff Dairiki was the next major contributor, and soon headed the project for the next couple of years. His interest was in Hammond Organs, and he ran a wiki for Hammonds.
Reini Urban, Carsten Klapp, and Joel Uckerman are the primary developers today and PhpWiki is still maintained and developed.
PmWiki
PmWiki is free wiki software written by Patrick R. Michaud in the PHP programming language. It is licensed under the terms of the GNU General Public License.
Design focus
PmWiki is designed to be easy to install and customize as an engine for creating professional web sites with one to any number of content authors. The software focuses on ease-of-use, so people with little IT or wiki experience will be able to put it to use. Despite having such low barriers to install a basic wiki, the software is also designed to be extremely extensible and customizable.
The PmWiki wiki markup shares similarities with MediaWiki (used by Wikipedia). The PmWiki markup engine is highly customizable, allowing adding, modifying or disabling markup rules, and it can support other markup languages. As an example, the Creole specifications can be enabled.
Features
Content storage
PmWiki uses regular files to store content. Each page of the wiki is stored in its own file on the web server. Pages are stored in ASCII format and may be edited directly by the wiki administrator. According to the author, “For the standard operations (view, edit, page revisions), holding the information in flat files is clearly faster than accessing them in a database…”
PmWiki is designed to be able to store and retrieve the pages’ text and metadata on various systems and formats. It does not support databases in its default installation. However, via plug-ins, PmWiki can already use MySQL or SQLite databases for data storage.
PmWiki supports “attachments” (uploads: images or other files) to its wiki pages. The uploads can be attached to a group of pages (default), individually to each page, or to the whole wiki, depending on the content needs and structure. There are PmWiki recipes allowing an easier management of the uploaded files, e.g. deletion or thumbnail/gallery creation.
Wiki structure
In PmWiki, wiki pages are contained within “wiki groups” (or “namespaces”). Each wiki group can have its own configuration options, plug-ins, access control, skin, sidebar (menu), language of the content and of the interface.
By default, PmWiki allows exactly one hierarchical level of the pages (”WikiGroup/WikiPage”), but through recipes, it is possible to have a flat structure (no wiki groups), multiple nested groups, or sub-pages.
Special wiki groups are “PmWiki”, Site, SiteAdmin and Category which contain the documentation and some configuration templates.
Templates (skins)
PmWiki offers a template scheme that makes it possible to change the look and feel of the wiki or website with a high degree of flexibility in both functionality and appearance.
Access control
PmWiki permits users and administrators to establish password protection for individual pages, groups of pages or the entire site. For example, defined zones may be established to enable collaborative work by certain groups, such as in a company intranet.
Password protection can be applied to reading, editing, uploading to and changing passwords for the restricted zone. The out-of-the box installation uses “shared passwords” rather than login names, but a built-in option can enable a sophisticated user/group based access control system on pages, groups of pages or the whole wiki.
PmWiki can use passwords from config files, special wiki pages, .htpasswd/.htgroup files. There are also user-based authorization possibilities and authentication via various external sources (e.g. LDAP, forum databases etc.).
Customization
PmWiki follows a design philosophy with the main objectives of ease of installation, maintainability, and keeping non-required features out of the core distribution of the software. PmWiki’s design encourages customization with a wide selection of custom extensions, known as “recipes” available from the PmWiki Cookbook. Creating and maintaining extensions and custom installations is easy thanks to a number of well documented hooks in the wiki engine.
System requirements
Prerequisites for running the PmWiki wiki engine:
- PHP 4.1 or later
- Any webserver that can run PHP scripts (e.g. Apache, Microsoft IIS, Lighttpd)
- Write permissions for the webserver user account in the PmWiki tree (required for off-line editing only)
- No file type extension restrictions on the webserver (sometimes a problem with free web hosting providers)
PmWiki has been reported to work with the following OS/webserver combinations:
- Apache 1.3 or 2.2, on roughly anything (Unix, Linux, Windows, and Mac OS X)
- Microsoft Internet Information Server, on Windows
- Appweb (a very small, php-enabled webserver) executing on a Linksys NSLU2 Network Storage Link device (running Unslung 5.5 beta, a Linux derivate for embedded systems)
- x86 Linux + LiteSpeedWeb Server Standard Edition
- There is a “recipe” to allow running PmWiki “Standalone”, without a webserver, for example from a Flash USB stick.
Author
PmWiki was written by the university professor and Perl 6 developer Dr. Patrick R. Michaud. Dr. Michaud owns a trademark on the name “PmWiki”. A number of other developers and users write, maintain and discuss “recipes” (special purpose configurations, skins or plug-ins) in the PmWiki Cookbook.
ScrewTurn Wiki
ScrewTurn Wiki is open source (GPLv2) Wiki software that runs on the Windows ASP.NET platform. It is written in C# and by default does not require a database, though SQL Server and Mysql are supported by the use of plugins.
It can be considered both a Wiki and a Personal Wiki because it also has a Desktop Edition that runs locally without the need to be installed on a web server.
The user interface, thanks to many users’ contributions, is available in 11 languages. The syntax is very similar to that of MediaWiki.
Notable features
Advantages
- Clear and simple syntax much alike MediaWiki
- Multiple storage options
- Plugin system
- Free and open-source
Drawbacks
- Users are divided only into two groups - admins and users (to be fixed in version 3.0)
- Almost no ACL and security configuration (to be fixed in version 3.0)
Open source development prize
In 2007, blogger Jeff Atwood asked his readers to help him donate money from his blog’s advertising revenue to open-source .NET projects. In 2008, he awarded $5,000 to ScrewTurn.
External links
- ScrewTurn Wiki homepage.
References
- ScrewTurn Wiki - Plugins and Providers - ScrewTurn Software
- ScrewTurn Wiki - Desktop Edition - ScrewTurn Software
- Atwood, Jeff Supporting Open Source Projects in the Microsoft Ecosystem, Coding Horror (blog), 2007-06-25
- Atwood, Jeff Donating $5,000 to .NET Open Source, Coding Horror (blog), 2008-04-30
Swiki
For information on the collaborative social search engine produced by the company Eurekster, see Swicki.
A swiki (Squeak WIKI) is a wiki written in Squeak. They are fairly commonly used by the Georgia Institute of Technology’s College of Computing as collaborative group web pages. It is also used in K-12 education and has been used successfully with 4th graders and higher. A Swiki has its own web server that can be set to run on ports 80, 8000, 8080 or 8888. It can coexist with Internet Information Services or Apache servers as long as they run on different ports.
A swiki consists of the Virtual Machine (VM) file (usually squeak.exe), an image file (usually squeak.image), and a set of files and folders with templates and the virtual wikis. One installation of a swiki allows a large number of virtual wikis to be created through the admin interface using any web browser. The image file and associated templates and virtual Wikis can be run on any OS as long as the VM for that OS is used.
The VM and image file are the only binary files. All of the swiki templates and pages are stored as text files using XML tags. Each new virtual Swiki goes in its own folder, and each page in the virtual swiki is numbered XML file. For example, the first page is 1.xml, the second is 2.xml, etc. History for each page is a separate XML file that used the file extension “old”, e.g., 1.old, 2.old.
References
- “Swiki.net: According to Advantive Associates, Swiki.net and the related NetUnify.org together host about 6,000 wikis.”. PC Magazine. 2003-12-30. http:www.mywire.com/pubs/PCMagazine/2003/12/30/421262?extID=10051. Retrieved 2007-11-11.
- Murali, J. (2003-06-09). “A Squeak-based Wiki server”. The Hindu. http:www.hindu.com/thehindu/biz/2003/06/09/stories/2003060900110200.htm. Retrieved 2007-11-11.