Ductus Development site

Ductus is a wiki system designed to handle arbitrarily-structured content and a variety of workflows. It is free software licensed under the GNU GPL version 3 or later. Currently it is used by the  Wikiotics language instruction project.

With Ductus, programmers can easily define classes of structured content, providing rich mechanisms for user interaction. For instance, Wikiotics allows people to collaborate on "language lessons," which can later be used as quizzes or flashcards. Such modes of interaction are not possible with most wikis which are designed primarily to handle freely-structured text.


When we began the Wikiotics project, we wanted to build a collaborative wiki where people could work together to build language instruction materials, but we soon realized that current wiki engines were not easily adaptable to our goals. In particular,

  • Most wikis (with a few exceptions) only truly allow the editing of hypertext documents. There is no straightforward way to add structured content, like a language lesson. (Although some wikis support templates, they often require obscure syntax.) Even if it were possible to enter structured content in a traditional wiki, it would be difficult allow the user to directly interact with it (e.g. by taking a quiz).
  • The workflow in most wikis is assumed to be linear, asymptotically converging to a stable state. Instead, language lessons may fork, and merge back together again at a later date. In short, we are attempting to build a wiki that is more like git than RCS.

While Ductus is obviously superior to other wiki systems in a few ways, it still lacks many features that other wikis have. Over time, we hope to improve Ductus, making it an obvious practical choice for almost any wiki-like collaboration.

Project Activity

Ductus is under active development and focused on a handful of high priority development targets. We encourage you to get involved by submitting bugs, discussing ideas, or contributing code. The  Ductus-developers group is the main forum for discussing the development and direction of Ductus.

Our top priority at the moment is to focus on improving the lesson creation/editing experience and to add support for flashcard lessons. We are also trying to close all tickets marked for the next milestone, M8. So far, we have fixed 2 tickets, but 0 remain open. Our current general task/ todo list is also available here.

fixme: Various (redundant) places where we list "high priority items"

Source code

The source code to Ductus can be  browsed online. The truly adventurous may wish to obtain the program's  git repository with the following command:

$ git clone git://

There are also  instructions for setting up a Ductus development instance on your local machine. Once that is set up, you may be interested in the  development overview.

Wiki index

Here's an index of the main important documents on this wiki (and elsewhere), until we come up with a better way of organizing them: