Spock is a simple wiki software heavily inspired by GitHub's Gollum and is mostly intended as a personal documentation system. I wrote it as a frontend for my technical notes.
Please note: This is alpha software and a toy project: use with caution!
- I don't want to fight with runtime dependencies, virtualenvs and such.
- I have a bunch of notes written in Markdown and RestructuredText formats.
- I like to edit wiki pages with my text editor.
- I like to use git to maintain the history of my notes.
- I don't want to run a full LAMP stack just to use my wiki.
- I'm having some fun learning Go.
- wiki pages can be written in Markdown or RestructuredText and can be edited with your preferred text editor
- git is used as the underlying storage system
- full text search (experimental)
- nice browser editor thanks to CodeMirror
NOTE: RestructuredText is not rendered by Go code, see below.
The first time you launch Spock it will need to create the repository directory:
./spock -repo ~/Documents/wiki -init
Typical usage:
./spock -repo ~/Documents/wiki
Runtime requirements:
- pandoc optional, enable rendering of rst and org documents
Build requirements:
- recent version of Go (tested with Go 1.3+)
- a C compiler
- git (to fetch some go dependencies)
- govendor
- mercurial (to fetch some go dependencies)
- libgit 0.23.x
- icu4c
- leveldb (optional)
On a Debian based GNU/Linux system you should be able to install almost all the required dependencies running:
sudo apt-get install pandoc cmake git mercurial libicu-dev libleveldb-dev
You must build libgit2 0.22.x by yourself.
On OS X with homebrew:
brew install mercurial icu4c leveldb libgit2
You can build Spock by running make
; if you system doesn't ship with
an updated version of libleveldb
you can edit the Makefile
and
remove leveldb
from the Go build tags.
Daniel Kertesz daniel@spatof.org
Spock includes a copy of CodeMirror 4.5: https://github.com/marijnh/codemirror