The long journey and inner workings of this blog
Jonas Hultenius
2022-12-20
I will not bore you with all the details but I wanted to tell you all (let’s face it no one will read this) about the inner workings of this blog and why I think it’s such a great idea.
But first some backstory. The process started one year ago when I decided to start a blog. A blog you say, in 2022 (or 2023 as it ended up becoming)? Yes, a blog some twenty years after it was cool, and in the age of Vlogs, Pods and Tiktok. I’m old school I guess and far from the bombastic power house of my youth. I have no place in the fast pace of Tiktok nor the chiseled look of a modern Youtuber.
My first step was obvious, to me, the technical platform to publish on. I have spent many years working with a plethora of different CMS solutions, both paid for and open source. But knowing my limits, a full fledged CMS was too much power and hustle för what I had in mind. I needed a blog engine!
Having worked with WordPress for years, that was obviously out of the question, and I started the only logical next step. Writing my own solution from scratch.
My platform, which never got a name other than the prototyping placeholder name of Flex, should be simple to use and quickly to develop for. Effortless to upgrade and cheap to host. And, fun to build.
I started out doing my research, drawing out plans and matching my requirements to different techniques and tech stacks to find the perfect match. I finally decided on a SveltKit base (being a fan of Svelte), styled by TailWind and powered by Markdown files instead of a full CMS. A cheap yet powerful hosting option would be Netlify and all built and optimized with continuous integration. Simpel!
I started building in January 2022 and the process went fast. In a few days I had, with the help of a great tech stack and the power of the internet, a working blog engine that blew my mind. Simple yet powerful and all and more of what I had set out to build.
Now only one thing remained, the content, so i started writing and within minutes (might have been hours) where back coding. Could I improve the solution? Should all images be uploaded and automatically be converted to WebP and AVIF? Was there more performance to gain? Could or should I make it more dynamic and use more micro animations?
After spending days I had a new cooler design and yet more features. So cool! Now back to the content. Time to publish something.
A few days later I told my colleagues that all were mightily impressed. Should I Open Source this and usher in a new dawn of blogging? Some people sure thought so. But then I need to refactor some things and write better comments. Better get on that ASAP.
Around then my powers to over engineer and procrastinate were all out. I needed a break. Just a few days off and then back to writing some last comment, maybe designing a logo and a better name and finally publishing some content and launching the blog.
Several months later Xmas was finally here and I was about to have some time off from work. A thought. Maybe I should start a blog?
But this time things should be different. I should just publish what I have and focus on content. So I got to work, started up my old project and quickly found that since it had been left unwanted and unloved for so long it was now stale and would not run. At all!
SvelteKit (which I love) had moved on without me and the syntax of version 1.0 was not what powered my now dated platform. So back to the drawing board I went and looked at med requirements for time to start anew.
Then, I found it. Swyxkit!
Swyxkit uses SvelteKit 1.0 and Mdsvex to combine the power of both Svelte, SvelteKit and Markdown. Built on Tailwind 3 it’s easy to manage and update and lovely to work with. It is built with hosting on Netlify in mind and all is builded and optimized through continuous integration.
And lastly, it uses GitHub Issues as CMS. All and more than I wanted. And it’s simple to use, open source and just a pleasure to work with.
So after a year of procrastination, I modified it to my needs and set out to finally produce some blog posts.
(A special thanks to my wife and children who put up with me and my fanatical interest in technology and over engineered blog solutions)