• Stars
    star
    309
  • Rank 135,306 (Top 3 %)
  • Language
    Python
  • License
    BSD 3-Clause "New...
  • Created over 10 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A wiki engine powered by Django and Git

Waliki is an extensible wiki app for Django with a Git backend.

Attention!

It's in an early development stage. I'll appreciate your feedback and help.

https://badge.fury.io/py/waliki.png https://travis-ci.org/mgaitan/waliki.png?branch=master https://coveralls.io/repos/mgaitan/waliki/badge.png?branch=master Documentation Status Wheel Status
home:https://github.com/mgaitan/waliki/
demo:http://waliki.pythonanywhere.com
documentation:http://waliki.rtfd.org
twitter:@Waliki_ // @tin_nqn_
group:https://groups.google.com/forum/#!forum/waliki-devs
license:BSD

At a glance, Waliki has these features:

  • File based content storage.
  • UI based on Bootstrap and CodeMirror
  • Version control and concurrent edition for your content using git
  • An extensible architecture through plugins
  • reStructuredText or Markdown support, configurable per page (and it's easy to add extensions)
  • A very simple per slug ACL system
  • A nice attachments manager (that respects the permissions over the page)
  • Realtime collaborative edition via togetherJS
  • Wiki content embeddable in any django template (as a "dummy CMS")
  • Few helpers to migrate content (particularly from MoinMoin, using moin2git)
  • It works with Python 2.7, 3.4 or PyPy in Django 1.8, 1.9 (and 1.10, most probably)

It's easy to create a site powered by Waliki using the preconfigured project which is the same code that motorize the demo.

Waliki was inspired in Github's wikis, but it tries to be a bit smarter than many others git backed wiki engines at handling changes: instead of a hard "newer wins" or "page blocking" approaches, Waliki uses git's merge facilities on each save. So, if there was another change during an edition and git can merge them automatically, it's done and the user is notified. If the merge fails, the last edition is still saved but the editor is reloaded asking the user to fix the conflict.

Getting started

Install it with pip:

$ pip install waliki[all]

Or the development version:

$ pip install https://github.com/mgaitan/waliki/tarball/master

Add waliki and the optionals plugins to your INSTALLED_APPS:

INSTALLED_APPS = (
    ...
    'waliki',
    'waliki.git',           # optional but recommended
    'waliki.attachments',   # optional but recommended
    'waliki.pdf',           # optional
    'waliki.search',        # optional, additional configuration required
    'waliki.slides',        # optional
    'waliki.togetherjs',    # optional
    ...
)

Include waliki.urls in your project's urls.py. For example:

urlpatterns = patterns('',
    ...
    url(r'^wiki/', include('waliki.urls')),
    ...
)

Sync your database:

$ python manage.py migrate

Tip

Do you already have some content? Put it in your WALIKI_DATA_DIR (or set it to the actual path) and run:

$ python manage.py sync_waliki

Do you want everybody be able to edit your wiki? Set:

WALIKI_ANONYMOUS_USER_PERMISSIONS = ('view_page', 'add_page', 'change_page')

in your project's settings.

Contribute

This project is looking for contributors. If you have a feature you'd like to see implemented or a bug you'd liked fixed, the best and fastest way to make that happen is to implement it and submit it back upstream for consideration. All contributions will be given thorough consideration.

Everyone interacting in the Waliki project's codebases, issue trackers and mailing lists is expected to follow the PyPA Code of Conduct.

Why Waliki ?

Waliki is an Aymara word that means all right, fine. It sounds a bit like wiki, has a meaningful sense and also plays with the idea of using a non-mainstream language [1] .

And last but most important, it's a humble tribute to the president Evo Morales and the Bolivian people.

[1]wiki itself is a hawaiian word

More Repositories

1

sphinxcontrib-mermaid

Mermaid diagrams in yours sphinx powered docs
Python
281
star
2

sublime-rst-completion

Restructured Text snippets and code completion hotkeys for Sublime Text 2 and 3
Python
248
star
3

curso-python-cientifico

Curso de Python orientado a estudiantes de ciencias e ingeniería, profesores, investigadores e ingenieros
Jupyter Notebook
158
star
4

fortran_magic

An extension for IPython/Jupyter that helps to use Fortran in your interactive session.
Python
115
star
5

preciosa

Inteligencia colectiva contra la inflación
Python
67
star
6

departamentos_argentina

Geojson/Topojson de Argentina a nivel departamentos
40
star
7

pytest-line-profiler

Profile code executed by pytest, line by line.
Python
24
star
8

django-orm-magic

An extension for IPython that help to define and use django's models on the fly
Jupyter Notebook
23
star
9

radiocut_downloader

Download contents from radiocut.fm
Python
20
star
10

pymips

A pipelined MIPS processor implemented in Python
Python
19
star
11

miau

Remix speeches for fun and profit
Python
17
star
12

waliki_flask

A simple yet powerful wiki engine -- Deprecated. New version:
JavaScript
17
star
13

moin2git

Migrate a MoinMoin wiki as a Git repository
Python
15
star
14

tisu

your project's issue tracker, in a text file
Python
8
star
15

preciosa_mobile

Aplicación cliente para smartphones del proyecto Preciosa
JavaScript
7
star
16

sqlalchemy-pretty-sql

Given a sqlalchemy query, display its well formatted and highlighted sql code.
Jupyter Notebook
7
star
17

elecciones_argentina_2013

Dump de datos en formato CSV del programa http://www.resultados.gob.ar/inimesas.htm
6
star
18

discursos_cfk

Discursos de Cristina Fernández de Kirchner
Python
4
star
19

mgaitan.github.io

>>> self.geek.post() (Mi weblog técnico)
HTML
4
star
20

one

one, the missing Python function
Python
4
star
21

forn

contratapas de Juan Forn en Página/12
HTML
4
star
22

f2f_online

Online Fortran 77 to Fortran 90/95 conversor
JavaScript
4
star
23

pytest-leak-finder

Find the test that's leaking before the one that fails
Python
3
star
24

trestapas

A platform to analyze historical newspaper discourses
Python
3
star
25

myhdl-talk

Slides and notes for a MyHDL talk on Cordoba PyDay 2011, Argentina
JavaScript
3
star
26

pytest-portion

Select a portion of the collected tests
Python
3
star
27

h2dp

Hamster to dotProject logs sync tool
Python
3
star
28

pasaron-cosas

https://mgaitan.github.io/pasaron-cosas/slides.html
HTML
3
star
29

git-hooks

scripts to be used as git hooks
Python
2
star
30

clarin_lta

Ignorar la ventana de login obligatoria de clarin.com o lavoz.com.ar
HTML
2
star
31

precios_maximos

Listados de Precios Maximos de Referencia por provincia
Python
2
star
32

gh-weekly

GitHub CLI extension that generates a weekly report in markdown listing the PRs worked on
Shell
2
star
33

hamster2jira

Post your Hamster logs into Jira
Python
2
star
34

intro-git

Introducción a Git - Charla 8va Jornadas de Software Libre de la UNNOBA
JavaScript
2
star
35

my-nikola-theme

The theme for mgaitan.github.io
JavaScript
2
star
36

gpec2010

Python
2
star
37

haztelibro

give a file with a list of urls, get a readable epub
Python
1
star
38

mezzanine-pagedown

Fork from https://bitbucket.org/akhayyat/mezzanine-pagedown
JavaScript
1
star
39

hay-camisetas-bot

¿Hay camisetas ⭐⭐⭐?
Python
1
star
40

en-pija

Generador online de "En pija approved"
1
star
41

video2ebook

A software based book scanner from videos
1
star
42

battleship

Generador de tableros de batalla naval
JavaScript
1
star
43

awesome-scipy

A curated list of python resources for science
1
star
44

django-milligram

Django base template powered by Milligram
HTML
1
star
45

nikolahub

Your Nikola blog rendered in the cloud
Python
1
star
46

datasets_preciosclaros

Datasets resultantes del scraper de preciosclaros.gob.ar
Jupyter Notebook
1
star
47

10consejos

10 consejos para un mejor software (de) científico(s)
JavaScript
1
star
48

esquedulin

Automatically exported from code.google.com/p/esquedulin
Python
1
star
49

presentacion_proyecto_final_gpec

Encontré las diapositivas de presentación de mi proyecto final
HTML
1
star
50

escuelas_argentinas

datasets (y scraper) de establecimientos educativos
Python
1
star
51

elecciones_argentina_2015

dump en CSV y sqlite3 de los resultados del escrutinio provisorio de las presidenciales 2015
1
star
52

wikibora

Una plataforma para el anotado colaborativo de Boletines Oficiales
1
star
53

charla_py3

Python 3 para escépticos
Jupyter Notebook
1
star
54

healthyurl

A simple command-line tool to perform health checks on a given URL using Python's standard library
Python
1
star