andrewm.codes
Design #
Typography #
I am using IBM Plex Sans on this site, a nice variable font, that I am self hosting. For markdown pages, I am using the Tailwind CSS typography plugin with a few modifications.
CSS #
I was an early adopter and am still a big fan of using Tailwind CSS, which is what this site is built with. I couple it with ViewComponent to make the markup clean and reusable.
Development #
Bridgetown does most of the heavy lifting on this site - it’s a Ruby based static site generator that I have fallen in love with.
I am using Tailwind CSS and ViewComponent to build and design the UI. All posts are written in Kramdown flavored markdown with ViewComponent’s sprinkled in. I store all of the images in Cloudinary and get my icons from Nucleo.
Under the hood, esbuild is handling asset bundling. I use almost no JavaScript on this site, but I have sprinkled Alpine.js here and there for small interactions.
Deployment #
This site is open source on GitHub and that is how I deploy. The site is hosted on Vercel and all pushes to the main branch trigger a deploy. I also use Cloudflare for DNS and domain management.
Tracking #
I am using Plausible Analytics, which is a GDPR, CCPA and cookie law compliant site analytics tool. I chose a privacy focused tool because I just want to know what pages are popular, not get a breakdown of the users. This is a personal site afterall.
For the curious: you can find my public analytics dashboard on the analytics page.
Misc #
I am trying to do more automated testing & monitoring this time around.
These are some of the things I am trying:
- Checkly: Delightful Active Monitoring for Developers + Vercel Integration
- Currently disabled while I am still working on the site.
- GraphJSON - The easiest way to analyze event data + Vercel Integration
- Don’t really know what to do with this yet.