• Jekyll
    • Jekyll is a modular templating engine
    • Builds static html files
  • Brief history of blogging
    • A blog 15 years ago is a bunch of html pages
    • Lot of code duplication
    • When you have 500 posts and want to change your phone number…
    • People started using php to pull in header, footer & then databases
  • Directory Structure & Files
    • _site - has all the compiled content
    • _posts - where you store your posts
    • _includes - where you store your assets
    • index.html is copied over
    • _config.yml - config file
  • Commands
    • jekyll new
    • jekyll build - compiles the files
    • jekyll serve
    • jekyll server --watch - checks for updates automatically
    • localhost:4000 - listens for connections on 4000 by default
  • Compilation
    • Compiles all the posts based on the layout that is being called
  • Post
    • Post has Front matter defined in YAML between --- lines
    • The front matter can have built in or user defined variables, which can be accessed from the page object
    • Front matter is required for a page to be compiled
    • yyyy-mm-dd-name.md - Naming convetion of posts
    • Posts use markdown syntax
  • Liquid
    • Templating language created by shopify
    • You can have programming logic, filters etc inside the liquid tags
    • Double braces
    • Braces followed by percent sign
  • Plugins
    • Go in _plugins directory
  • Deployment
    • Take the content under the _site folder and place it your static server
    • Use github pages