22 January 2018

How I began developing this site

In happy far-away land (1902)
In happy far-away land (1902)
(Image source: Wikimedia Commons)

Welcome to the new I will be your host, Ricky de Laveaga.

I began developing this site with GatsbyJS by running a:

git clone

…of gatsby-starter-blog1, the Gatsby starter for creating a blog (demo), which has Typography.js bundled, whose demo playground is a fun way to noodle out a prototype design.

Anyhoo, as of this post I am using a modified version of the GitHub theme. After much staring at the screen and tweaking CSS, had to include the inimitable trio of Source Serif by Frank Grießhammer, Source Sans by Paul D. Hunt, and Source Code Pro by Paul D. Hunt and Teo Tuominen. All 3 are part of the Adobe Originals series.

Typefaces makes including NPM packages for open source typefaces and self-hosting webfonts significantly easier. Library author Kyle Mathews explained the motivations in January 2017.

Though the git clone example above hardly does it justice, gatsby-remark-prismjs (docs, on GitHub) makes adding “syntax highlighting to code blocks in markdown files” using Prism a drop-in affair with a line in gatsby-config.js and another in layouts/index.js. I have settled on a slight variation the “prism.js tomorrow night eighties” theme, itself based on Tomorrow Theme.

I cannot neglect to issue a hearty thanks to all of the Gatsby GitHub people along with all of the authors and contributors. For solid examples of common patterns in Gatsby and React, the repo and code are both superb open learning resources in the wild. by Kyle Mathews (repo) is maybe less generally useful while also being more approachable and especially helpful to me in putting this together.

UPDATE 20 November 2019: I have been using Algolia search since 24 July 2019 via gatsby-plugin-algolia, thanks to the excellent example by Janosh Riebesell that has become part of the Gatsby docs. I don’t think either article has been updated for changes React InstantSearch made in v6 to adopt React 16.3+’s Context API, but Janosh’s repo and this one have been updated, in case that helps intrepid folks trying to make the switch.

As an instant bonus for reading all the way down, I give you the…

Links Page 🔗📄

  1. Having already installed gatsby-cli, One could run: gatsby new mySite …in the terminal instead of a git clone of the gatsby-starter-blog repo like I did, which then needs to be followed by a yarn or npm i before running gatsby develop for the first time. The Gatsby Docs start with the gatsby new command which takes care of this initial package install. (For more on git and cloning, see git-clone docs.) The source of the gatsby new command is split between create-cli.js and init-starter.js in the Gatsby repo.