For the past month or so I've been working on the upcoming Ivory for iOS app, which I started working on when I went back to an iPhone from Android and thus couldn't run my existing Mastodon client app anymore. I'm going to write a separate blog post for my thoughts on the Android app and its future as well as the new iOS app in a later time, but for now I'm going to keep this just Swift related.
About a month into developing the iOS app I discovered that Swift can also be used for server-side projects - and me really liking Swift and its speed immediately started doing what I always do when I discover a new passion - experiment. So I did and as an experiment I usually (when applicable) re-write my personal website. It's not a complicated website, but it does run a custom static blog engine that I've written. Since the previous version of my site was powered by Clojure in the back-end, I wrote that engine in Clojure. The basics of which I even blogged about. A simple feat, perfect for starting out something new.
This time around however I decided to make it into a library and put it out there as an open source piece of software. So I did. It became a Swift package called Staticman and it's what runs this very site right now. Essentially what it does is that it parses Markdown files in a specified directory for your content, which is in the format of a Jekyll blog post (YAML on top, content below it) and then it allows you to build stuff with it. May it be a blog like mine or just adding static content to a otherwise dynamic website, that's up to you.
That's it. Oh and, Ivory for iOS is probably still at least a month away from an initial release. Listen, the App Store people are picky (and it's a good thing) and I just started learning Swift and the iOS ecosystem a month ago so I mean, I'm only human!