Skip to main content

A simple Django based wiki system.

Project description

Compatibility Matrix:

Py/Dj 3.8 3.9 3.10 3.11 3.12
3.2 (LTS)
4.0
4.1
4.2 (LTS)
5.0

django-wakawaka

django-wakawaka is a super simple wiki system written in Python using the Django framework.

  • Links between Wiki pages are automatically resolved by their CamelCase naming scheme.

  • It automatically keeps track of revision changes of a Page, while providing the ability to revert to earlier states.

  • It also has a quite comprehensive permission integration, taking care of Django's default create/edit/delete permissions.

  • Wakawaka is an application and indented to be placed in an existing project.

Some screenshots from the Example Project:

Installation:

  1. Put wakawaka to your INSTALLED_APPS in your settings.py within your django project.
  2. Add (r'^wiki/', include('wakawaka.urls')), to your urls.py.

That's all. Wakawaka has no other dependencies than Django 1.11 or later.

Configuration:

Wakawaka takes care of Django's permission system. Grant your users always a pair of wikipage and revision permissions either what they should do. (Adding, changing or deleting WikiPages)

Optional Settings:

The name of your first wiki page is defined as WikiIndex. You can change this by adding a setting WAKAWAKA_DEFAULT_INDEX to your settings.py. Example:

WAKAWAKA_DEFAULT_INDEX = 'Home'

Words that are written in CamelCase (a pair of one upper letter followed by n lower letters) are automatically treated as internal wiki links. You can change this behaviour by adding a setting WAKAWAKA_SLUG_REGEX to your settings.py. This holds a regular expression of the wiki name format. Default:

WAKAWAKA_SLUG_REGEX = r'((([A-Z]+[a-z]+){2,})(/([A-Z]+[a-z]+){2,})*)'

Attachments:

Wakawaka does not provide the ability to store file attachments to wiki pages. To do so, have a look on the side project django-attachments which provides a unobstrusive way to add attachments to models.

Testing and Development:

The project comes with a test library which can be simply invoked by Tox, which tests the project under all current Python and Django versions:

$ pip install tox
$ tox

To run the testsuite manually in your development environment, install the project using Poetry:

$ poetry install
$ pipenv run pytest

Example Project:

The application comes with a sample project. This gives you a brief overview about the Wiki features, and can help you with the integration of the application into an existing project. It's alo used for the test suite:

$ poetry install
$ poetry run ./manage.py migrate
$ poetry run ./manage.py createsuperuser
$ poetry run ./manage.py runserver

Changelog:

v1.5 (2024-07-10):

  • Switch from pipenv to a Poetry build system
  • The IP Address field is now optional

v1.4 (2023-12-15):

  • Added support for Django 5.0.
  • Added support for Python 3.12
  • Type Annotations

v1.3 (2022-04-30):

  • Added support for Django 3.2 to 4.2.
  • Added support for Python 3.8 to 3.11.

v1.2 (2020-01-08):

  • Dropped support for Python 2.7.
  • Added support for Python 3.8.
  • Added support for Django 2.2 and 3.0.

v1.1 (2019-01-21):

  • Django 2.1 compatibility and and further cleanup.
  • Dropped support for Django <v1.11.
  • Dropped "authenticated" url patterns which were not functional since a while.

v1.0 (2016-11-26):

  • Django 1.10 compatibility and total cleanup.
  • Full Python 3 compatibility.
  • Removed Pinax Group support.
  • Tests.

v0.3: (2009-08-06):

  • If a wikipage was not found, the view now raises a proper Http404 instead of a (silent) HttpResponseNotFound. This gives you the ability to display a proper 404 page.
  • All templates are now translatable using gettext.

v0.2 (2009-07-22):

  • Edit-forms are now replaceable

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_wakawaka-1.5.tar.gz (25.0 kB view details)

Uploaded Source

Built Distribution

django_wakawaka-1.5-py3-none-any.whl (37.0 kB view details)

Uploaded Python 3

File details

Details for the file django_wakawaka-1.5.tar.gz.

File metadata

  • Download URL: django_wakawaka-1.5.tar.gz
  • Upload date:
  • Size: 25.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.4 Darwin/23.5.0

File hashes

Hashes for django_wakawaka-1.5.tar.gz
Algorithm Hash digest
SHA256 b0bffde1b204b5700d1696ba5fe6b913cfefcb22ec2d3310f735f304db6a1025
MD5 67de1e823bc798a2e1b1417b61645b05
BLAKE2b-256 1d313c6f0f31acc409bfa7eb4bb0830372a4df92384282f57170a16e85332303

See more details on using hashes here.

File details

Details for the file django_wakawaka-1.5-py3-none-any.whl.

File metadata

  • Download URL: django_wakawaka-1.5-py3-none-any.whl
  • Upload date:
  • Size: 37.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.4 Darwin/23.5.0

File hashes

Hashes for django_wakawaka-1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 4f170c59b08a7b0646228f1dfe9e4cfd9d9223c5212e7d5fd7d74a291a94cc7f
MD5 07a2f939d663e28150428cf7a0588a8d
BLAKE2b-256 c674a4b37dc8de89a7a4f2e584ae5ae261a9d2c32050f6110ec51dbd8d62ddcf

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page