statim - A quick and easy almost-wiki
statim is a shell script for generating static websites with wiki-like links from a source directory. Statim is designed so that it has minimal dependencies at runtime.
Why another static site generator?
I wanted a super simple site generator that could be set up to generate my site every time I push to a git repository. In this can I can set up a hook that will run whenever the repository updates that will process the content directory and put it in my publicly served directory.
I also wanted it to run with very minimal dependencies. I don't want to have to worry about if Ruby or Perl are installed, and which versions of which libraries are available. I just want things to work.
Finally, I did it because it was simple and fun.
How it works
statim.sh script in the a directory that also holds a
content directory with the source of the website to generate. Then
This will copy the files from
content over to
$DIST_DIR. It will
also convert any markdown files (identified by files ending in
.markdown to html and add some wiki-style links.
The links are only generated between files in the same sub
directory. Statim will look at each file, convert its name from an
underscored version (i.e.
some_file_name) to a camel cased version
SomeFileName) and then switch any occurences of that string
within the same directory to a link to the generated HTML file. This
happens both on markdown files that have been converted to HTML, and
to HTML files that you add to content yourself. Be careful not to add
links yourself that might cause statim to double-generate them (its
not that smart yet).
Statim doesn't follow the same policy on dependencies when it comes to
development. There are rake tasks that (obviously) require ruby and
:autotest task currently requires
- Remove the hardcoded markdown command and search multiple options to make the dependency list more forgiving.
- Test on a system other than a Mac.