📘
Lab Website Template docs
  • Introduction
    • Overview
    • Is this right for me?
    • Gallery
    • Support
  • Getting Started
    • Set up your site
    • Set up your URL
    • Tidy up your repo
    • Change your site
    • Preview your site
  • Basics
    • Repo structure
    • Configure your site
    • Edit pages
    • Write basic content
    • Use your logo
    • Customize your theme
    • Team members
    • Blog posts
    • Citations
    • Components
      • Section
      • Figure
      • Button
      • Icon
      • Feature
      • List
      • Citation
      • Card
      • Portrait
      • Post Excerpt
      • Alert
      • Tags
      • Float
      • Grid
      • Cols
      • Search
      • Site Search
  • Advanced
    • Update your template
    • Embeds
    • Math, diagrams, videos, etc.
    • Analytics
    • Data and collections
    • Jekyll plugins
    • Custom components
    • Background knowledge
Powered by GitBook
On this page
  • Pre-installed
  • Others
  1. Advanced

Jekyll plugins

One main reason we chose to build this template on top of Jekyll is that it is probably the most heavily adopted static site generation tool. A benefit of that is that there is a large ecosystem of plugins to choose from for additional functionality.

If there already exists a Jekyll plugin to achieve a feature (properly and reliably), we elect to not build it into the template.

Pre-installed

These plugins are so useful that we've chosen to bundle them in the template by default. Some of the features in the template rely on these plugins, and these docs assumed they are installed.

Plugin
Description

A Jekyll "Swiss Army Knife". Provides support for table, mathjax, plantuml, mermaid, emoji, video, audio, youtube, vimeo, dailymotion, soundcloud, spotify, etc. See its docs for more info.

Generates a sitemap file and puts it in your website (hidden) for search engines to see.

Allows you to add a redirect_from field to a page's front matter. When a user visits one of the URLs listed, they'll be redirected to the page instead.

Generates an RSS-like feed of your blog posts and puts it in your website (hidden) for RSS tools to see.

Allows you to access the last time a file on your site was changed.

Usage of each of these plugins is either passive, or documented on another page where appropriate.

Others

These plugins will be very useful to some, but weren't or couldn't be included in the template for various reasons.

Plugin
Description

Allows authoring you site content in multiple languages. Very valuable, but a very involved setup and effort.

Populates site-wide fields like title and description from your GitHub repo if not set.

Imports a GitHub avatar image from a user name, which you can size and style as you wish.

Imports a GitHub Gist and displays its text.

  1. Add - jekyll-some-plugin under plugins: in your _config.yaml file.

  2. Add gem "jekyll-some-plugin" under group :jekyll_plugins do in your Gemfile file.

PreviousData and collectionsNextCustom components

Last updated 7 months ago

Not a Jekyll-specific plugin, but very useful. Checks for broken links, images, and more. It is installed by default, but not enabled by default. .

An alternative or supplement to the .

To install a plugin, follow . In summary:

Generate a new Gemfile.lock file by .

the instructions here
jekyll-spaceship
html-proofer
See how to enable it
jekyll-sitemap
jekyll-redirect-from
jekyll-feed
jekyll-last-modified-at
jekyll-multiple-languages-plugin
jekyll-scholar
built-in citation capabilities of the template
jekyll-github-metadata
jekyll-avatar
jekyll-gist
previewing your site locally