(Almost) everything revamped: My new website and new blog

(Almost) everything revamped: My new website and new blog
Table of contents

Now for the third time, every few years, I realize that my personal web presences are no longer up to date – with my personal website this feeling has been following me for well over two years now, but I simply hadn’t had the motivation, let alone the time, to rebuild the site. That changes now: Over the course of two weekends, I rebuilt both my personal website and this blog. With modern technologies, I’m finally saying "goodbye" to PHP and WordPress and "hello" to Astro, Ghost and TypeScript. With that in mind: Welcome to the new site!


A short timeline

It all started in 2019 with an HTML template from Colorlib, which became my first little website of my own. It may have been sufficient for my age at the time and my limited knowledge of web technologies, and even back then it was already a client-side-only website, but by early 2021, when I wanted to start writing about some of my projects, the technology had become too inflexible for me to set up a meaningful blog with the knowledge I had at the time. So I looked around the market and got myself a template for the popular content management system WordPress, which, after installing 30 plugins, finally had just about enough features for me to launch the new website and the completely new blog.

This technology has now done its job reasonably well for five years (at least the site didn’t have a single second of downtime), but for a current portfolio, the existing site was too difficult to customize, and as a user you could notice both the slow speed of WordPress in the background, and the design wasn’t ideally tuned either, so the template had some sections that I could only sparsely fill with meaningful information. It quickly became clear: I needed a new website, and this time the starting point wasn’t the design, but the features and the content. I’ve been looking for a free weekend for at least two years now to finally update both paul-goldschmidt.de and p3g3.de. During the semester break, that moment had come. Finally.

The technology behind the site

In general, my new main site has become significantly less complex in terms of design and is now mostly a two-column layout with a static background. No flashy animations, a clear focus on the content, plus a new logo and small Easter eggs scattered across the site.

I didn’t come up with the design myself, but instead took inspiration from the homepage of Robb Böhnke, reimplementing it on top of Astro (a JavaScript framework for highly optimized client-side homepages). For the blog, I developed a custom theme for the Ghost CMS.

All source code is publicly available on GitHub:

PaulGoldschmidt/paul-goldschmidt.de for my homepage as well as

PaulGoldschmidt/p3g3.de for the blog theme.

In the end, what was supposed to be a plan to relaunch the website and blog in one weekend turned into almost a week of work, but I think that was time very well spent (especially compared to the previous state).

Hello, english blogging!

There’s also something new with the blog: The articles I write here on p3g3.de are automatically translated and published on blog.paul-goldschmidt.de.

A small feature overview

A few of the features I’d like to highlight regarding the new portfolio website:

  • Dynamic page background
  • Implementation of Web-Haptics for haptic feedback on mobile devices
  • Command-K shortcut overlay
  • Automatic addition + deployment of new blog posts
  • Automatic version synchronization with the GitHub tag
  • Several small Easter eggs (e.g. on April 1st, I’ll leave the rest to curious seekers)
  • 100/100/100/100 Google PageSpeed Insights scores
Fast too!

Conclusion

I’m very happy with the new website and the infrastructure that makes it possible. At the same time, I’m curious to see how I’ll look back in another five years on the technology decisions I made over the past few weeks. JavaScript frameworks come and go; hopefully Astro and Ghost CMS will remain a good choice for websites for a long time.