This commit moves the site to use the official Jekyll SEO Tag
plugin (https://github.com/jekyll/jekyll-seo-tag) to generate the
search-engine meta in the HEAD of each page. The title and canonical
URL output should be largely the same as before, but with additional
metadata, such as JSON-LD (for richer indexing), Twitter card
metadat, etc.
Like the other plugins, this should largely work out-of-the-box,
with no additional day-to-day configuration, but is customizable
where desired.
Starting with Jekyll v3.3, Jekyll ships with `relative_url` and
`absolute_url` filters. Rather than manual concatenating strings,
we can rely on Jekyll to handle the logic in Ruby land, which
takes into account the site's URL (locally and in production), and
handles things like double "/"s.
Remove baseurl from the config for three reasons:
1. It's not used anyplace within the site
2. The site’s base URL is only to be used when the resulting site
lives at a subpath of the domain. Otherwise, the subpath should be
nil, not /.
3. When the Pages Gem is loaded as part of the :jekyll_plugins
group, baseurl and url are set automatically.
Although the title already has a "name" entry, this commit replicates
the name as "title", and adds a "description" entry, both of which
are shared across common, official Jekyll plugins like jekyll-feed
and jekyll-sitemap.
This allows the feed and sitemap to properly output the title and
description in various places.
Jekyll Sitemap (https://github.com/jekyll/jekyll-sitemap) is an
official Jekyll plugin, which should serve as a drop-in replacement
for the existing sitemap.xml. The resulting sitemap should be largely
similar to the existing sitemap, but with a shared, battle-tested
template that accounts for all sorts of edge cases, handles collections
and static files, etc.
Jekyll Feed (https://github.com/jekyll/jekyll-feed) is an official
Jekyll plugin which should replicate the existing feed nearly
identically, but with a shared, battle-tested template that
accounts for all sorts of edge cases like relative links in feed
entries.
It should be a drop in replacement and "just work" without any
additional configuration.
The GitHub Pages Gem (https://github.com/github/pages-gem)
is a meta-gem that does two things:
1. It locks dependencies to the same version used by GitHub Pages
ensuring that when you build the site locally, you're using the same
version of plugins and other dependencies used in production.
2. When loaded as part of the :jekyll_plugins group, it allows
the Gem to set certain configuration defaults and overrides
(such as activating default plugins) to ensure, once again
that your local preview replicates the production version
as closely as possible.