Our Common Time

Dev Update

This Blog From Scratch

The SvelteKit Refactor

Kyle Sarte 618 words 3 min Pinned

Developers can take a lot of pride in the code they write, myself included. [...] But more important than letting ego get involved was recognizing that I didn't need to reinvent the wheel.

About two months ago, I deployed the latest version of this blog, rebuilt entirely from scratch using SvelteKit.

svelte commits "Fixes" is as descriptive as it gets

Prior to this, the blog had two homes; starting as a self-hosted WordPress site on a DigitalOcean VPS then under a managed host on Cloudways. I went this route for one reason: simplicity.

Me
What's the quickest way I can get a blog post published on a site that's "mine" i.e. more than just an account on Medium or Substack?
DigitalOcean 1-Click WordPress Droplet
hey

In the beginning, the focus for Our Common Time was content—I wanted to write blog posts, not code. I want something I can easily customize, but not so custom that I have to deal with writing all the code to handle basic blog features myself. Sounds familiar…

I was just describing a blog-centric

Developers can take a lot of pride in the code they write, myself included. Admittedly, Why would I use WordPress when I could just build this whole thing myself? was a thought that crossed my mind. But more important than letting ego get involved was recognizing that I didn’t need to reinvent the wheel. In this case, the wheel was a two-decade-old, tried-and-true, multi-billion-dollar CMS powering It was also one I happened to already have some experience with.

So, if my goal was content, then WordPress and DigitalOcean it was. This worked fine for the better part of a year with no back-of-the-mind desires to take the blog beyond a simple WordPress template.

Until I picked up SvelteKit for an unrelated side project.

The project was a full stack web app. Nothing big (25-30 users max) but a full package with a database, user auth, realtime UI updates, internal mini apps, etc. After a successful v1.0 launch to the first 10 users, and fresh off a very enjoyable development experience learning SvelteKit, I was looking for my next project.

On paper, rebuilding the blog would be a much simpler task—no user accounts, no database, no realtime data fetching—but there were still some blog-specific features to implement that would get me more familiar with Svelte (e.g. slug-based routing, Markdown preprocessing). With Svelte 5 just around the corner at the time, I decided to start the project using the Svelte 5 beta so that I’d be ready to go with no migrations needed

A couple hundred lines of code later brings us to today’s version of the blog, one that ignores all my talk about not reinventing the wheel and is built from scratch anyways. But the goal in the beginning was content, so to build the site from the ground up just because I could would have just been getting in my own way of what I really wanted to do (write). The new goal (more experience with Svelte) was more in line with the idea of a complete rebuild.

Like I mentioned in All Our Corners of the Internet, I now have the privilege of calling “custom” really custom. I’ve been enjoying adding little features to the blog like the new Link Popover and the typewriter effect on the published date of each post.

The main focus of Our Common Time is still personal (and sometimes overly sentimental) written content, but it’s also turning into an online sandbox of sorts where I can take a break from all the backend C# of my day job and play with some frontend web dev.

Footnotes

  1. Definitions can get blurry. WordPress is a Content Management System, but while blogging is arguably its most popular use case (and its original use case), it's used for so much more than that. When I say blog-centric CMS I could also mean blog hosting service, but that would include less customizable offerings like Medium and Substack.

  2. It's true, at least according to a 2021 report by W3Techs.

  3. The long awaited release of Svelte 5 finally happened back in October. Read all about it here.