Skip to content

jimenezrick/wi-wiki

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

  Wi! wiki
============

Ultra-minimalistic wiki written in Bash. Very small, just a single CGI
script.  All the content of the wiki is stored in a Git repository, each
article is saved as a separated text file in Markdown syntax. It is so
simple that it doesn't have any user management (KISS philosophy).


 Features
----------

- Dead-simple
- File-based using a Git repository
- Content optionally generated statically
- Markdown syntax


 Dependencies
--------------

- Bash
- Git
- Markdown-to-HTML converter like: markdown, python-markdown, ...
- Web server with CGI support


 Install
---------

Create a Git repository with read/write permission for the CGI script
and accesible by the web server, then copy all the Wi! wiki files to
that repository. Symlink or copy wi.sh to your CGIs directory.

If you want, you can reuse the Wi! wiki source code repository for the
wiki content, but maybe is a good idea to create a new branch `wiki' to
keep it well organized.

Look at the top of wi.sh to customize three variables: Markdown program
name, location of the wiki repository and the CGI URL path (the last two
are relative paths to the web server root).

Could be a good idea to create an URL alias in your web server like
this:

	http://host.com/cgi-bin/wi.sh -> http://host.com/wiki


 Usage
-------

Apart from the CGI functionality, you can run the next command to create
a static version of the wiki content:

	wi.sh --generate-static

This is useful for a cron job to replicate statically the content of the
wiki every day.

It's highly recommended to run the CGI as a dedicated user for such
task, as the shell script CGIs are always in danger of exploitation.

If you find unpleasant the idea of a public wiki with no user
management, just put the wiki in some hidden place and show to the
public the static version.

Note: the `Undo' button is just a `git reset --hard HEAD^' on the
      repository, so be careful because it is going to destroy commits
      one by one.


 Project status
----------------

Version 1.2 finished.


 License
---------

The program is under the GPLv3.


 Feedback
----------

Feel free to send me an email if you have any question about the code,
you found a bug or you have a feature request. Send it to:

	jimenezrick@gmail.com

About

Ultra-minimalistic wiki written in Bash, uses Git to save Markdown pages

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages