Yaki

Yaki (which stands for “grill” in ) was the provisional name for my NewWikiMigration project, which was completed in May 2007.

It is the CMS that ran this from to , and can be described as a full-blown, heavily filesystem-oriented Wiki engine.

At the moment, there are three independent versions of it:

Since people like lists of features, here are a few (for the production version):

  • 100% pure , with extensive UTF-8 support1
  • Entirely self-hosting, running atop a modified (1.51-rcarmo) Snakelets application framework2
  • Completely filesystem-based (pages are stored on a directory structure, not a database)
  • Heavily optimized processing:
    • Pages are pre-processed to HTML
    • HTML and other internal info are stored in a single-file cache, a la Haystack
    • Everything is served via sendfile(2) calls whenever possible
    • Uses every caching trick in the book to minimize actual page hits
  • Completely markup-agnostic – all the internal processing relies on , and it ships with support for:
  • Any markup engine that generates HTML can be added, and markup can be defined on a site-wide or page-per-page basis
  • Has all the usual features, like:
  • Has a number of unusual “Bliki”:Wikipedia:Bliki features, like a blog-like home page, linkblog support, and the SeeAlso table at the bottom of each page.
  • Supports full-text indexing and search thanks to Whoosh
  • The core code is “Open Source”:Wikipedia:Open_Source under the MIT License

Similar Projects

There are a number of similar endeavors out there you might find at least as interesting. You can check out for a vastly more comprehensive list I compiled during Yaki’s development, but these are fairly modern:

1 As much as possible within OS and filesystem constraints

2 Forget about massive sprawling toolkits, Snakelets, is stable, tweakable and largely platform-agnostic.

This page is referenced in: