Saga 1.0.0 has been released

About ten months ago I wrote that I was confident that the API of Saga wasn't going to change a lot anymore, and that I'd release 1.0.0. Well, it's taken a little bit longer than I expected back then, but 1.0.0 has finally been released!

read more

A review of Markdown parsers for Swift

A hugely important part of any static site generator is of course the parsing of Markdown content. The default parser for Saga is Parsley, a custom wrapper around a cmark fork. While I am generally quite happy with it, there are some problems.

read more

Building my own static site generator, part 7: updates & the road to 1.0.0

In the past few days I’ve made some pretty substantial improvements to Saga, to make it work for me and my website, which is now built using Saga.

read more

Building my own static site generator, part 6: replacing SwiftMarkdown

I've already replaced my own SwiftMarkdown package...

read more

Building my own static site generator, part 5: replacing Ink and Splash

I've replaced the Ink and Splash dependencies with my own SwiftMarkdown package.

read more

Building my own static site generator, part 4: a complete redesign

An unexpectedly quick fourth article about Saga, after a complete redesign of the API.

read more

Building my own static site generator, part 3: thoughts so far

In the third and final part of this series about Saga I'm looking at the pros and cons of the current system and what I might want to change.

read more

Building my own static site generator, part 2: API design

Part 2, where I'm looking back at the current API of Saga.

read more

Building my own static site generator, part 1: inspiration & goals

In part 1 of a series of articles I'm looking at the inspiration behind my static site generator Saga, now available on Github.

read more

Swift generics and arrays

I’m in the very early stages of building my own static site generator in Swift. I want the library to provide a basic Page type, that the user can then extend with custom metadata, and I need to be able to put Pages with different kinds of metadata...

read more