notesassorted ramblings on computer

Visualizing a zk Notebook using Hakyll

zk is a simple plain-text note taking system built around Markdown. Within my zk notebook, I have a subdirectory with public notes. From these notes, I generate static HTML using Hakyll, a static site generation framework written in the Haskell programming language. The layout of the generated site is inspired by the werc anti-framework, the color scheme builds upon the Linuwial theme.

Hakyll Setup

While Hakyll is generally a very flexible site generator, existing examples primarily use it for blog-like websites. For my use case, I had to improve Hakyll’s dependency tracking and write glue code to support some zk peculiarities. For more information, refer to the following notes:

  1. Towards Metadata-only Dependencies in Hakyll
  2. Tag-based Navigation using Hakyll
  3. Supporting zk’s Markdown Extension in Hakyll

Future Work

A visualization of zk’s linking system (especially backlinks) would be nice to have. This, however, requires additional design considerations regarding dependency tracking, as it presupposes inspecting the file content. A naive implementation would thus reintroduce content dependencies.

See Also