Charlie Luo

23 May 2020

A Personal Website

I’ve been wanting to build a personal website for a number of years, but never really got around to it. But, in my senior year, I figured it was time for me to record and reflect on the things I’ve worked on, so I committed to building a nice-looking website for the future - the result of which you see here.

Framework Choice

To begin building a modern website, I absolutely had to use a modern framework. At first, I was leaning to something React-based like Gatsby, since I had some experience with React (and I knew virtually nothing else about web frameworks). However, the overhead for React was daunting for a simpler static website I had planned, so after further research, I went with Jekyll, a web framework made for blogs that did exactly what I needed. In retrospect, this was an excellent decision - though I think I could have gotten started faster with React, Jekyll let me customize and tweak my website faster and more easily, especially in regards to styling.

Choosing a Style

I spent a solid day doing research - looking through a huge amount of Jekyll themes and finding other people’s personal websites that I liked. Eventually, I decided that I should build my site from scratch. Though it would be harder to build, it gave me a better understanding of what I was doing so I could mess with whatever I wanted without breaking style code. In retrospect, I should have looked for a very minimal template, since building from scratch ended up looking considerably worse since my style code is awful. I spent more time on styling and CSS than I ever wanted to and still ended up with rather subpar results.


After finishing most of the site, I looked for a way to host the site for free. This quickly made me realize I actually had no idea how websites were hosted, and since I was impatient, I just used Github Pages with the domain name I had purchased months ago. I was considering Firebase Hosting, as I had experience with the setup, but I thought it was a bit overkill for a static site. In the future, I should probably add analytics to my site, which will most likely be through Firebase, and I’ll have to move from Github Pages - however, for now, it just works.


I’m really hoping I never have to use Jekyll again. The development process wasn’t completely awful, however, the whole experience reasserted that I’m a terrible stylist that should stick with themes. The whole process was meant to be a day project, but took a week and a half instead. The reasoning behind my design decisions was good, but I needed to understand and work around my relative strengths, rather than fulfill my personal ideal of development. On the other side, I did learn a lot, especially CSS/SCSS, so I guess building from scratch made me learn more, even if I didn’t really want to learn more.


I took heavy inspiration from a variety of personal websites I found online:

They all have incredible websites and inspired many of the design choices I took when building my own.

Source code for my website is available here.