Over the past weekend I decided to redo my portfolio website, michaelsolati.com, a task which I was dragging my feet on. As a Developer 🥑 (Advocate) I speak at events, write blog posts, and maintain some libraries. When re-doing my portfolio I wanted to showcase all of that without ever needing to update the site. The new site does all that and a more, such as:
- It rips my work experience from LinkedIn via Puppeteer and shows it on
- Articles I've written on dev.to are shown on
- My most starred and recent GitHub repos are shown on
- Recorded talks are fetched from a YouTube playlist and shown on
- Two themes are available, one for devices using light mode and one for dark mode.
- It also works offline thanks to a service worker.
- It grabs my dev.to profile picture and saves it, as well as generates PWA icons from the profile picture.
- Updates the
- Saves all the cover image or social image from my dev.to posts.
- Saves all the previews images of the YouTube videos in the playlist.
- Generate screenshots that can be used for sites like Twitter of Facebook.
- GitHub Actions will update all the data and images then deploy to Firebase once a week.
It honestly does a lot, but here's the exciting part...
Meaning you can fork it and only need to update the
environment.general.ts file in order to have the site completely customized for you.