Website Rewrite 2

May 19, 2022

Two weeks ago, I rewrote my personal website again.

This time, I rewrote it using Laravel. My theory is that Laravel is super flexible and will let me do anything I want, so maybe Iā€™ll stick with the framework this time.

Of course, thatā€™s been the hope with every rewrite in the past, including that time I rewrote my website in Laravel.

I actually kept the design the same, mostly just recreating the old site. I added a photo of myself on the homepage though, so visitors can imagine what I look like.

I initially moved my editing interface to Laravel Filament, but got fed up with the editor that came built in.

So instead, I moved editing blog posts to GitHub Issues. (For those unfamiliar, GitHub is a place where developers save their code, and Issues is a feature for keeping track of bugs with your code.) Iā€™m abusing Issues by making each ā€œissueā€ a blog post, and using tags to keep track of drafts, etc.

I really like using GitHubā€™s markdown writing editor, so Iā€™m liking this setup!

For those technically-minded: I cache the GitHub issues in Redis, and have a webhook set up in GitHub that refreshes that cache every time a GitHub issue is edited.

I also added an email newsletter for my blog. I send it weekly, with updates about things that I find interesting and links to my blog posts from the last week. I have a quite rudimentary setup, where I store email addresses in my Laravel appā€™s database and then send emails by pasting email addresses into my personal email client.

The biggest thing that Iā€™ve added with this website rewrite is free-form pages. Theyā€™re pages that arenā€™t blog posts, which I also write in GitHub Issues.

The idea for these pages came out of me wanting to publish class notes and make my website more like a library.

Because of that, thereā€™s no centralized index of all the free-form pages: theyā€™re simply linked together where it makes sense.

My hope is that Iā€™ll start adding other types of writing to my website that donā€™t make sense as blog posts: for example, notes from a programming course or summaries of Black Mirror episodes. In the fall, I want to use these free-form pages to write up notes from all of the classes Iā€™m taking.

Get new posts by email (or RSS)!