Skip to main content

The _config.yml file

The _config.yml file provides configuration information to Jekyll. The Morea Framework uses this file to provide important configuration information.

For general information about this configuration file, see https://jekyllrb.com/docs/configuration/. The following sections document each of the important configuration fields for a Morea site.

Sample contents

Here is an example version taken from the template that illustrates the default settings. There are three sets of fields:

  • Site Specific: fields that the user frequently modifies for each site.
  • Morea Portal: fields that are only important if this site is part of a "Morea Portal".
  • Internal Configuration: fields that the user should not normally edit.
# MOREA CONFIGURATION FILE
# See https://morea-framework.github.io/docs/instructors/config-yml

# SITE SPECIFIC: The following fields are typically changed for each site
name: ICS 199
baseurl: /morea
morea_theme: spacelab
timezone: Pacific/Honolulu
morea_navbar_items:
- Prerequisites
- Modules
- Outcomes
- Readings
- Experiences
- Assessments
- Schedule
logger_factory:
Morea: error

# MOREA PORTAL: The following fields are only needed if this site is part of a "Morea Portal".
# morea_course: ics311
# morea_domain: http://morea-framework.github.io/
# morea_google_analytics_tracking_id: "<your tracking id here>"
# morea_head_breadcrumb_link: "http://cnn.com"
# morea_head_breadcrumb_label: "CNN Site"

# INTERNAL CONFIGURATION: The following fields are not normally edited by users.
markdown: kramdown
kramdown:
hard_wrap: false
input: GFM
syntax_highlighter: rouge
mathjax: true
exclude: [morea]
keep_files: [schedule/schedule-info.js]
plugins:
- jekyll-gist

Field documentation

The following sections document each field.

baseurl

DescriptionThe baseurl field tells Jekyll what the root domain URL should look like.
TypeSite Specific
ValueTypically the name of the repo.

exclude

DescriptionThe exclude field tells Jekyll not to process the morea/ subdirectory. Instead, the MoreaGenerator plugin will process all of those files.
TypeInternal
Value[morea]

keep_files

DescriptionThe keep_files field tells Jekyll not to delete the schedule-info.js file in the destination directory upon regeneration, because it is written directly to the destination directory by the MoreaGenerator plugin.
TypeInternal
Value[schedule/schedule-info.js]

kramdown

DescriptionThe kramdown field provides configuration information to the kramdown markdown processor. In rare cases, the user might want to adjust these settings.
TypeInternal
ValueSee the sample file.

logger_factory

DescriptionMorea has a configurable logger (based on the logger_factory plugin) which allows different amounts of output to be sent to the console. There are four possible values. In order of increasing output, they are: error, warn, info, and debug.
TypeSite specific
errorfatal errors only. combine with -q on command line for least amount of output
warnerror output + missing optional YAML matter
infowarn output + summary of processing steps
debuginfo output + internal debugging data, for developers

markdown

DescriptionThe markdown field tells Jekyll what markdown processor to use.
TypeInternal
ValueTypically kramdown.

mathjax

DescriptionThe mathjax field tells Morea whether or not to download the MathJax CSS and JS files.
TypeInternal
ValueIt's easiest just to keep this enabled, unless you are experiencing errors or slow page display times due to MathJax.

morea_course

DescriptionThe morea_course field tells the Morea Portal what course this is.
TypeMorea Portal
ValueTypically the name of the repo.

morea_navbar_items

DescriptionThe morea_navbar_items field tells Morea which of the Morea entities to display in the Navbar.
TypeSite Specific
ValueComment out any entities you don't actually use. For example, "prerequisites" is often commented out.

morea_theme

DescriptionThe morea_theme field tells Morea which Bootswatch theme to use.
TypeSite Specific
ValueUse any theme in the css/themes directory. At the time of writing, the following theme values are available: cerulean, cerulean-green, cerulean-purple, cerulean-red, darkly, spacelab.

name

DescriptionThe name field tells Jekyll (and Morea) what the name of the site is.
TypeSite Specific
ValueTypically the name of the site. You can include spaces.

plugins

DescriptionThe plugins field tells Jekyll what gems must be installed.
TypeInternal
ValueWe have one for GitHub Gists at the time of writing.

timezone

DescriptionThe timezone field helps Jekyll to format times and dates correctly. For a list of legal timezone specifications, see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
TypeSite Specific
ValueCurrently set to Honolulu time.