Web application development toolkit and a content management system

Testing Status Coverage Status Code Climate

Wiking is a toolkit for web application development in Python. Wiking CMS is a content management system written using this toolkit and is distributed along with it. It allows the user to manage a web-site using a web browser.

Key Wiking CMS features:

  • The system is carefully designed to be accessible for website visitors as well as content creators.
  • Support for internationalization and multilingual content is built-in. Multiple language variants of the content can be managed seamlessly.
  • Content is created using a generalized and simple to learn structured text format.
  • Page attachments (external files such as images, documents, recordings or videos) may be embedded in page content.
  • Complete user registration process and user management subsystem supports e-mail registration confirmation, automatic notifications, password reminders, safe password storage and access rights management.
  • Built-in modules for discussions, site news and planner/calendar with RSS support are also part of the default installation.
  • The user may choose from a set of predefined styles and color themes or directly customize them.
  • Wiking API allows development of simple Wiking CMS extensions embeddable in page content or complete stand-alone web applications.
  • The output conforms to W3C and other relevant standards.
  • All components licensed under GNU GPL.

Existing Wiking CMS applications developed within our other projects:

The user interface is currently translated into Czech, English, French, German, Hungarian, Italian, Norwegian Polish, Slovak and Spanish. Other translations are being added gradually. Please, contact us if you want to contribute.

This website is powered by Wiking CMS. Other examples are:

Wiking is written in Python and is based on two other important components:

  • LCG ... provides content abstraction, internationalization support and html generation.
  • Pytis ... provides data abstraction, modularization and database access.

I can be also said, that Wiking is a web interface to the Pytis toolkit and Wiking CMS is an application built on top of this toolkit. The actual CMS logic resides completely in modules and the engine itself is just a thin layer. This makes the system easily extensible and well maintainable.

The current implementation can be run on Apache web server over mod_python or as a WSGI service. It relies on PostgreSQL as a database backend.

Documentation is available as a part of the project and is distributed together with the source code. You can browse the HTML version on-line.

The source code is managed using Git. You can use the Git web interface or clone the repository from:


There is a public mailing-list wiking@lists.freebsoft.org for this project.

This list is for for Wiking developers, as well as for users. If you want to contribute the development, propose a new feature, get help or just be informed about the latest news, don't hesitate to subscribe. The communication on this list is held in English.

See also the listing of other Free(b)soft mailing lists.