Levellers: Version d7e2d7060188d3ddc26206bb2a2a0c94a8b30ebc of Introduction

Levellers | A wiki for collaboratively developing left-wing policy for rural Scotland.

Welcome to Smeagol!

Smeagol is a simple Wiki engine inspired by Gollum. Gollum is a Wiki engine written in Ruby, which uses a number of simple text formats including Markdown, which uses Git to provide versioning and backup. I needed a new Wiki for a project and thought Gollum would be ideal - but unfortunately it doesn't provide user authentication, which I needed, and it was simpler for me to reimplement the bits I did need in Clojure than to modify Gollum.

So at this stage Smeagol is a Wiki engine written in Clojure which uses Markdown as its text format, which does have user authentication, and which uses Git as its versioning and backup system.

DLL Hell

Unfortunately, Smeagol currently uses clj-jgit for Git integration, and clj-jgit depends on an obsolete version (0.5.3) of org.clojure/core.memoize, whereas other components of the system rely on the current (0.5.6) version. This conflict currently makes it tricky to do an out-of-the-box build of Smeagol. You need to check out clj-jgit and build a custom build, depending on the current, not the obsolete, version of memoize. I'm working to fix this problem.

Markup syntax

Smeagol uses the Markdown format as provided by markdown-clj, with the addition that anything enclosed in double square brackets, [[like this]], will be treated as a link into the wiki.

Security and authentication

Currently security is very weak. There is currently a file called passwd in the resources/public directory, which contains a clojure map of which maps username to maps with plain-text passwords and emails thus:

{:admin {:password "admin" :email "admin@localhost"}
 :adam {:password "secret" :email "adam@localhost"}}

that is to say, the username is a keyword and the corresponding password is a string. Obviously, this is a temporary solution while in development which I will fix later.

Todo

License

Copyright © 2014 Simon Brooke. Licensed under the GNU General Public License, version 2.0 or (at your option) any later version.

Editing the framing content

You can edit the _left-bar, the _edit-left-bar, and the _header.

This website stores session information as a 'cookie' on your browser. This helps us show you the content you want to see. This cookie does not identify you, and cannot be read by other websites. It is deleted by your browser as soon as you leave this site. This website does not use any third party cookies, so your visit here cannot be tracked by other websites.
About cookies