Colophon
This website is based on recivi. My JSON based résumé is available on GitHub along with this website's source code for you to use as you like. The web space is registered as a free sub-domain with is-a.dev and is hosted with Netlify
Design
Colors
The site's color palette comes from Catppuccin, specifically the Mocha and Latte variants for the dark and light modes respectively.
Typography
The site uses Inter by Rasmus Andersson, as the sans-serif typeface. Inter is famously readable at all sizes and weights, for both headings and body text. The résume, for a more classical look, uses the serif typeface Spectral by Production Type. Both fonts are open-source and licensed under the SIL Open Font License 1.1.
The programming typeface is set to monospace
for a multitude of reasons:
- This respects the font choices of the user. Programmers are very particular about their typefaces, and letting them read in their preferred font makes for a good experience.
- Not having to download a font makes the site faster and more efficient, and avoids the flash of unstyled text.
Unfortunately, users of Safari will probably not have a choice in fonts, so they will have to exercise their choice in web browsers.
Technology
For a developer portfolio, I find it ironic that this is a collection of largely static pages.
- The site is originally built on the concept of progressive enhancement and can be used without both CSS and JavaScript, with little or no degradation in the overall experience.
- The source code is TypeScript, Astro and Tailwind, because JS should be strongly typed, HTML should be broken into components and CSS should be tokenized.
- Open Graph images (e.g. this one) are generated with
@vercel/og
. Automation is great for tasks like this that are otherwise impossible to do manually with consistency. - GoatCounter provides privacy-friendly metrics without adding too much bloat. Data is only retained for 31 days. You can opt out by disabling JavaScript in your browser.
- My interactive résumé and some other parts of the site generated from a JSON file using Récivi.
- The only external requests this site makes are to Rasmus' site for Inter, Goat Counter for analytics.