Jekyll: Static Webpages

Jekyll: Static Webpages

A basic introduction to Jekyll Static Page Generator

Jekyll is an open source static site generator maintained by employees at Github. Jekyll takes text written in Markdown, Liquid, HTML & CSS and uses standardized layouts to create static webpages. You can easily customize the look and feel, URLs, and the data displayed on your pages.

Jekyll Staic Page Generator

Jekyll is the supported solution for webpages using Github Pages. The deployment workflow, using Github Actions, is very well documented. {: .prompt-tip}

Static Pages

The advantage to using static pages for your wesbite, from an information security perspective, is it decreases security risk: if there isn’t a content management system - that is one less thing that can be exploited. Tools such as the [jekyll-admin](https://rubygems.org/gems/jekyll-admin ‘Jekyll Admin Plugin"), and jekyll-manage provide an offline UI that makes updating and adding content simple. You just push your site once you have made updates. Github Actions streamline the publishing of pages so that all is required is a simple git push. {: .prompt-danger}

If you are interested in adding a comments section, e-commerce solution, forms - visit the Jekyll Resources page on their website.

You can create your own theme or choose from the free and paid themes that are available. The Jekyll community also provides many useful plug-ins and the process for creating your own is fairly straightforward.

Jekyll is available for most platforms: Windows, macOS, and Linux.

Jekyll requires a few prerequisites Ruby Programming Language, Ruby Gems, GCC and GNU Make : all free and open source and the installation instructions are included in the Jekyll Quick Start.

  • Ruby A dynamic, open source programming language with a focus on simplicity and productivity. It has an elegant syntax that is natural to read and easy to write.
  • RubyGems RubyGems.org is the Ruby community’s gem hosting service. Instantly find gems for your project or publish your gems and then install them.
  • Make The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Ada, Go, and D, as well as libraries for these languages (libstdc++,…). GCC was originally written as the compiler for the GNU operating system. The GNU system was developed to be 100% free software, free in the sense that it respects the user’s freedom.
  • GNU Make GNU Make is a tool which controls the generation of executables and other non-source files of a program from the program’s source files.
  • Jekyll Markdown Guide The Jekyll Markdown Guide, Jekyll converts the markdown content in your source files (.md) into html output.
  • Kramdown By default, Jekyll uses the kramdown Markdown processor with stock settings, but you can enable other kramdown options or even switch Jekyll to another Markdown processor.
  • Jekyll Resources Links to themes, plug-ins, deployment guides and other useful resources.
  • Github Pages Jekyll can be implemented on a GitHub Page fairly quickly and easily.