Website Update


As you can see, the website has been drastically changed. It's because I shifted from ssg to mkdocs.

It is not a fault of ssg, but rather a fault of mine.

I just can't write good CSS.

I was initially using a hacked CSS from typora themes, but it had lots of, um, "pizza crust" (just a methphor, I eat all the crust). And upon receiving feedback from my friend about the site's general lack of appeal, I thought it's time for a change.

Meanwhile, I also developed a two other sites using another static site generator, called mkdocs, which was primarily developed to create documentation pages for projects. However, I was pleasantly surprised at its flexibility in creating good blog sites; mainly in its ability to change the top navigation bar. Sure, it doesn't have the customizability of hugo or jekyll, but do you really need them at the end of the day?

To leverage ssg, one needs to invest a lot of time to create a good CSS, which I didn't have.

So, I said, f**k this, time to abandon ship. And I decided to change the site generator from ssg to mkdocs.

The jump didn't take much time; it was around 10-15 min of work, and I'm happy with the result.

Mkdocs isn't magical. Not everything is perfect. Few things which don't work for me, such as

  • Most themes don't support quoted text
  • Can't create custom 404 pages
  • Can't disable the sidebar
  • Can't use nested codeblocks, but was fixed by using the superfences plugin. Yes, mkdocs supports plugins.
  • It's a bit finicky about relative paths

But I can look past these faults. The main advantage is that mkdocs does not fight me. I am using the cosmo theme from mkdocs-bootswatch and the pymdown-extensions for superfences, which I downloaded using pip.

I hope this workflow has come to stay.