blainehansen

Old Blog

The first version of this blog was written in the Meteor framework.

published: November 19, 2015 - last updated: May 13, 2024

Building the internals of this blog was the easiest part. The design was the hard part ha, I'm not a designer!

This was also a Meteor project, but I did a couple of unusual things to squeeze performance out of the app. I wanted as little per request computations as possible, so I decided to not use a database collection, but instead all articles are written in Markdown with Haml frontmatter to define the title and other metadata, gathered at bundle time, compiled into templates, and added to a client side collection by a build plugin. The collection _id, template name, and url slug are determined by the filename. So for example:

<!-- filename-post.md -->
---
title: "Post"
thesis: "This is a post"
tags:
- stuff
- things
---

# Various Markdown

*things I believe*

* stuff
* others
* whatever

Would become available as a post at blainehansen.me/filename-post.

Having everything pre-compiled and sent to the client without need for database queries makes the whole site much lighter weight.

Want to hear from me in the future?

Usual fine print, I won't spam you or sell your info.
Thank you! Come again.