Skip to main content

Jidn, a New Theme for Nikola

It took me a while to settle on which static site generator I would use. The decision was only ever between two, Pelican and Nikola. I finally chose Nikola as it used existing components, which I feel allows its developers to focus more on their project and spread the load amongst many others. However, none of the themes really hit me.

I was looking for a simple, minimal look with a nice clean font and the closest, cleanest I could find was lanyon. So I went with it.

One day I was reading an article from Hynek Schlawack's blog and I was impressed. Clean, neat, the author's bio, it was beautiful. Then I sneaked a peek at the source. It was gorgeous HTML that was easy to read.and simple. I fell in love and I decided to create a Nikola template to try and capture some of the beauty I found there.

You can find it at GitHub.

Configuration

It requires some changes in your conf.py. From the way the CONTENT_FOOTER is written, I can only assume that Nikola expects only a single author. I wasn't going to bet on that so I allow for multiple author information using their name as a key. So if it doesn't appear, that should be the first place to check.

Note

Only the image keyword is required. All the rest are individually optional.

GLOBAL_CONTEXT = {
  "JIDN": {BLOG_AUTHOR: {   # Or "Clinton James" for alternate authors
            "image": "http://example.com/my-image.jpg",

            ## The following are all individually optional
            "email": BLOG_EMAIL,
            "bio": """I am the very model of a modern major general.""",
            "map": "Chicago, IL  USA",
            "social": (
                "https://twitter.com/username",
                "https://facebook.com/username",
                "https://github.com/username,
                # You get the idea
                )
            }
          }
}
image

A URL that should contain a 120x120 image of yourself. If you want a different size, change the dimensions in the CSS.

bio

A string giving a statement about yourself.

map

A string providing your general/specific location.

social

A sequence of your public social accounts you want others to see. There is no rule about which are included. From the URL I try to match it to something in FontAwsome; with a few exception cases I thought about. In your case, you may have a very long list. You may need to add some changes to templates/post.tmpl in social_link.

If you find problems, I welcome any patches.