y Site, Version 14.0

A New version, new tools, new techniques, new everything — I had a lot of fun in rewriting and re-coding my site, and I think there could be some interesting stuff inside. In this post, you’ll find some words about it alongside a not-so-precise changelog.

More than two years passed since my previous update of this site. After a lot of work, I can finally present you with the newest version of it.

I want to tell you about so many thingsGo to a sidenote… But a lot of them would need much more words than I’m able to write after all the actual work, so, for now, I’ll present you a list of everything I can remember that changed in a rather compact way.

ll the Changes


The previous version was built with Gulp 3 and a bunch of JS (basically, it was my own static generator). After reading a lot about HugoGo to a sidenote, I have decided to try it as well, especially after I found out it has a lot of the same conventions I had made for myself (like, for multilanguage support).

However, it didn’t have everything I wanted, so my actual build has two steps: I use Gulp 4 to comb through my content files, styles, and some other things, and then output it into Hugo, who then builds everything very very fast. Overall, I sped up the build by around 8 times, and the incremental rebuilds are now much more stable and fast as well.

Basically, now the engine consists of:

  1. Gulp v4 with some plugins.
  2. Hugo, which is started from within Gulp.
  3. CSSTree with some js to build all the styles (and CSSO to compress them), with source maps, which you can see in your inspector, btw.
  4. All the code is still highlighted with Prism.

And, that is, basically, it? The overall engine is very custom and the code is far from being clean, but I like how everything works.

Ah, and everything is powered by Netlify instead of GitHub Pages, and I didn’t yet encounter a system easier to set up. Netlify is really great!


When I first created my site, I wrote there only in Russian. Then, after some time, I started to write all the new articles in both Russian and English at the same time, and later stopped to translate my articles from English to Russian, and English became basically the main language for my site. However, Russian was still the default language in the engine, and everything for the English version was placed in the /en/ top-level directory.

With the new version I did two things:

  1. I have swapped languages: now kizu.ru/ is in English, and kizu.ru/ru/ is the part of the site in Russian.
  2. I went further and removed all the extra unneeded stuff from the URLs, so each article’s URL is just its “slug”, for example, the URL for this post is just kizu.ru/v-14-0/.

All of that was made in a backward-compatible way, with redirects for all the old pathsGo to a sidenote. Hugo, as my previous custom static generator, have a static aliases feature, which is pretty good. So no links to my articles should become unavailable. But if you’ll manage to find some older link that won’t — feel free to tell me!

Ah, and, as I now use Netlify, I’ve switched to https and now the domain is prefixed by www. My current DNS provider does not support ALIAS, so I’ll live for a bit with those www, but would think about moving my DNS to Netlify as well maybe. We’ll see.

esign & Typography

The foundation of the design is still the same, but there are a lot of changes, some bigger, some smaller. I could miss some of them, but basically:

And there are a lot of smaller changes. A lot of those can be unintended, as I rewrote the CSS for everything from scratch.

ew Extremely Experimental CSS

Oh, there are so many things! I really hope I could write about them in separate articles. For now, there would be a rather brief description, but if you’ll want to know about any of the mentioned parts (or about something you could see in the source), feel free to ask! This would make it easier for me to prioritize which articles to write first.

One important disclaimer: a lot of the ways I wroteGo to a sidenote my CSS are not really intended for real production sites. I treat my site as a playground and a scientist’s lab so you can find prototypes of all the different weird things there. And if I have used something for my site, it does not mean you should use it for yours. If something interests you, wait for an article about it or ask me directly.

So. What is inside?

I think that I totally forgot about something, and there can be much more I would want to write about my new site, but I would better do this in separate articlesGo to a sidenote, otherwise, I would never finish this post.

Feel free to explore the source of my site, or just play with it and wonder how things are done. Just be cautious: I didn’t try to write it in an understandable or maintainable way. Everything is a prototype, an experiment, a bunch of sticks and rocks glued together. There are interesting bits but do not expect a masterful work of art.

I would like to know what do you think of my site, what seemed to be bad or good, what can be improved and so on. I’m open for emails at kizmarh@ya.ru, and you can always write to me on mastodon. I hope you’ll find something interesting for you here!

Let me know what you think about this article on Mastodon!