(source) started as a web frontend to the tool I described in this blog post, built to explore the Yesod framework. I later converted to use Snap, and wrote an additional wrapper for Pandoc.

Once I had the code written for data-uris (base64 encoding) and Pandoc, I realized it was easy generalized to support other encodings and transformations, and shelling out to other programs, so I added support for a variety of other tools.