Astro
12/13/2023

Design comparison of my portfolios

To display my project work and for my own personal use, I’ve built multiple portfolio iterations using similar layouts. I’m comparing the current version of my portfolio, built using Astro, with the previous version, built using Vue and Inertia with a Laravel backend.

The portfolio you are viewing now is built entirely with Astro for static site generation, and vanilla typescript to apply some necessary interactivity. This was selected due to it’s performance advantage. You can check for yourself, the site scores perfect 100s on Lighthouse for both desktop and mobile. It’s addtionally easier to maintain, with posts such as this one being written in Markdown instead of raw HTML.

My version 2 portfolio was a highly interactive Vue.js application, with a Laravel backend. It was built using Inertia.js, which is a bridge between the two frameworks. It’s heavily animated and looks great, however, as it used a Javascript bundle, it was not the fastest site to load. Furthermore, it used a MySQL database to store the project data, which added unnecessary overhead for each page load.