New documentation for all Grav open education projects is now available! Visit

This is a brief guide to help educators use the Grav Course Hub as an open and collaborative multi-device partner for their LMS. In other words, to ‘flip’ it good!

Grav Course Hub Screenshot

This guide has been updated to reflect that the Git Sync plugin is now included with the Grav Course Hub.

Table of Contents
Course Hub Overview
Flipping your LMS with Grav
Installing the Course Hub
Working with Grav
Using Git and GitHub Desktop
Setting Up a Course in Grav Course Hub

Course Hub Overview

The Course Hub skeleton is intended to accompany a face-to-face, blended or fully online university course. It supports a flipped-LMS approach using the modern flat-file (no database) Grav CMS as an open and collaborative Web platform.

Can’t wait to see the flipped LMS approach in action? Explore a mid-term snapshot of the SFU CMPT-363 Grav Course Hub, partnered with the Canvas LMS.

Course Hub Features

  • A complete ready-to-run Grav package (Source on GitHub)
  • Blog-format, with ‘featured’ (sticky) posts
  • Single course per Hub, multiple courses per Hub or even multiple course sub-sites (blog + multiple pages per course) per Hub
  • Optional important reminders & class preparations areas
  • Hub pages can be easily added/removed/changed
  • Uses Markdown for streamlined cross-platform content
  • Image header area above Hub navigation bar
  • Sidebar is a simple markdown file, which can also contain HTML
  • URL flag to only display page content (for display within LMS). For example,
  • Creative Commons (CC) License picker
  • External links are automatically opened in a new Tab/Window
  • Built-in support for Git Sync plugin for ‘set-and-forget’ syncing to GitHub or GitLab for collaborative site editing
  • Since everything is built with Grav it can be entirely customized

Required Technical Skills

  • Markdown or HTML basics
  • Understanding folder hierarchies (i.e. relative links)
  • Webserver access
  • GitHub, GitLab, etc. working knowledge (recommended)

Flipping your LMS with Grav

What is a Flipped LMS?

A flipped LMS approach is where an open platform, in the control of course participants, serves as an alternative front-end to the institutional LMS.

Flipped-LMS approach
Figure 2. Flipped-LMS approach.

Why Flip your LMS?

  • To support pedagogical goals unmet by current LMS/platform
  • To deliver a better student (and facilitator) experience
  • To increase capability of access, sharing and collaboration

Why Use a Modern Flat-file CMS?

As an open source modern flat-file CMS, Grav offers a distinct set of advantages to Web-savvy educators looking to move beyond their institutional LMS:

  • Modern means…
    • Use of current standards (i.e. Markdown, Twig, YAML, etc.)
    • Modular/customizable content chunks (i.e. reuse of content)
    • Further separation of content (i.e. files) from presentation
  • Flat-file means…
    • No database means less (or no) IT involvement needed
    • Content stored in text files rather than in a database
    • In many cases, this translates into faster page access times
    • Increased portability, as moving a site now only requires simply copying files to another location
    • Takes full advantage of the collaborative ecosystem now available (i.e. GitHub, GitLab, etc.)

Want to learn more about flipping your LMS with an open and collaborative platform such as Grav? Explore more visualizations in the article Flipped-LMS Approach Using an Open and Collaborative Web Platform

Installing the Course Hub

Web Install

Pre-flight Checklist

  1. Confirm Webserver PHP version (PHP 5.5.9 or higher)
  2. Git (v. 1.7.1 or higher) is available on Webserver
  3. Webserver login credentials (username and password)

Installation Steps

  1. Download the ready-to-run Course Hub Skeleton Package (GitHub Repo)
  2. Unzip the package onto your desktop
  3. Copy the entire Grav Course Hub folder to your Webserver
  4. Point your browser to the Webserver folder
  5. Create your site administrator account when prompted
  6. And you’re Grav Course Hub is now up and running (press the icon in the Admin Panel to preview site)

Git Sync Configuration

On the far-right of your site menubar there will be a reminder displayed to complete the two steps to enable GitHub/GitLab syncing and editing of your site content. First tap on the Setup Git Sync Plugin (Step 1 of 2) menubar link, complete the displayed setup wizard, then return to viewing your site and tap the Setup Edit Page in Git Link (Step of 2) menubar link and provide the base URL to your created Git repository.

If you would prefer to not use Git Sync with your Course Hub, in your Admin Panel go to the Site tab on the Configuration page and set the Display of Edit Page Link option to None and then tap Save.

Git Sync Configuration Video

Video 1. Course Hub Setup with GitHub Editing._

Working with Grav

Now that the Grav Course Hub is up and running you are ready to start working with Grav! To learn how Grav is organized, and how to add and edit pages, read the Grav Basic Tutorial.

You can view the all of the official Grav documentation at If you are looking for additional help check out the Getting Help section.

Grav for Educators Workshop Slides

If you are new to Grav, you might find these workshop slides helpful:

Using Git and GitHub Desktop

Setting up a Course

For details about configuring and further customizing the Grav Course Hub read Setting Up a Course in the Grav Course Hub.

Suggestion or corrections to this guide? Edit this Page on GitHub

comments powered by Disqus