4 Apr 2023 ~ 4 min read

I redid my website

Tagged with

Hi there! Welcome! This is my new website.

I’ve been planning to rebuild my site for some time. When rebuilt it the first time around, I wanted a site I could update easily and frequently, and where I could practice writing. That was back in 2020, and other than a few blogposts and typography changes, I didn’t do very much of either of those things.

Whenever I came back to it after a long period of time, I realised I had forgotten how to contribute to it or maintain it. The main reason why I built the site the way I did fell through. I felt discouraged and unmotivated to contribute to it, and I didn’t feel strongly enough to rewrite it.

So, I had my requirements for my new website. In priority order:

  1. Easy to update (content and code)
  2. Easy to launch (minimal setup, minimal hurdles)
  3. Easy to migrate (my old site’s content)
  4. A new tech stack (for experimentation/learning)

Why Astro

Heads up; I’ll write more about my technical considerations for each tool in a later post. This is just how my website came to be.

I initially chose 11ty because I really wanted the source code to be a simple static website, so I stuck with evaluating Static Site Generators. Coming from a React background, and having built Innowell’s website with Gatsby, that was my initial instict. The code structure and workflow would be familiar to me and as such a popular tech, it seemed valuable to get to know it better. That’s 1 and arguably 2 and 3 catered for. I know setting up Gatsby required some hurdles to be jumped in set up, but they were minimal and I could probably find a template to start from to save me some effort.

I evaluated a few other static site generators as well as Astro. In each case, I spent some time reading through documentation, reading example code, and watching people set things up. But once again, other things took priority over the site, the friction was still too high. I needed to flip my process.

Process-flipping

I decided to just start building with each tool and seeing which I got furthest with before I got bored, busy or distracted. What I had learned through my readings so far made me most curious about Astro, so I decided to pick that up first. And the rest is history.

Within minutes, I had a fully functioning blog site running locally. The CLI was incredibly helpful, and the starter template I chose was easy to navigate and modify. It was even pre-configured with (a tiny amount of) Svelte, which I had written a little bit of in the past, and I really wanted to explore more if I had the chance.

Fantastic – requirements 1, 2 and 4 passed in the first half hour. And once I got to know the file structure and how similar the markdown files were to my existing stuff, the migration was a breezy copy paste job. It was pretty much decided for me.

✅ ✅ ✅ ✅ ✅

I spent the next few days making small tweaks to the site when I got time. When it was near parity, for the sake of done over perfect, I deployed the site. I’ve been adding to it ever since.

Shipping it

I told myself I would work on the site for an hour each day. Then, every week I’d deploy on a Monday. This wouldn’t include blogposts, which could happen any time. Obviously, this didn’t happen.

But I’ve been steadily chipping away at it, even using it as an outlet in times when I desperately need distraction.

Since it’s a static site, hosting was super easy as well. I could even reuse my existing setup with GitHub pages, which I happily did.

So, there it is. If all goes to plan, you’ll find posts here about tech, front end development, the internet, design, and who knows what else. You can also find more information about what I’ve been doing to the site, and what I built the site with.

But more than anything, I hope you’ll find it changing frequently, and I hope you’ll find it useful. Reach out on socials if you have any feedback or comments. 👇

Check back soon.

✌️


Headshot of Miko

Thanks for reading. I'm Miko, a UI Developer from Sydney, Australia.
You can follow me on Mastodon or Twitter, see my code on GitHub, or connect with me on LinkedIn.