Jekyll Course Template is a free, MIT-licensed Jekyll theme from P2PU for publishing a simple open online course site on GitHub Pages, complete with Google Analytics and Disqus comment integration.
What is the Jekyll Course Template?
The Jekyll Course Template is a static-site generator template for creating a lightweight course website without a learning management system. It takes course information from YAML configuration files and Markdown posts, and outputs a static HTML site ready to host on GitHub Pages. It was created by Peer 2 Peer University (P2PU) and is available on GitHub.
Key Features
- Simple course site — Produces a clean, static course website with an about page and date-ordered content sections.
- Google Analytics tracking — Add your site ID in the
_config.ymlfile to enable pageview analytics across the course site. - Disqus comments — Set your Disqus shortname in
_config.ymlto allow learners to comment on course posts. - GitHub Pages hosting — The template is designed to run from the
gh-pagesbranch of any GitHub repository, with no server setup. - Content via Markdown posts — Course lessons are written as Markdown files in
_posts/, with filenames beginning with a date to control ordering. - Central course configuration — Course metadata such as title, description, and links live in
_data/course.yml. - MIT licensed code — The template code is released under the MIT license, and content added by users defaults to CC-BY-SA.
Who is it for?
The template suits educators and community organizers who want a minimal online course site without committing to a full LMS. Course facilitators can publish open courses in a few steps, and developers comfortable with Jekyll can customize the theme or contribute improvements. It is also useful for P2PU-style peer learning circles.
What can you do with it?
- Course facilitators: Publish course announcements and lesson content as dated posts, grouped under a 'contents' category to appear on the course about page.
- Open education advocates: Host a free course site on GitHub Pages, with analytics and comments, while keeping code and content openly licensed.
- Jekyll developers: Use the template as a starting point to build custom course or workshop sites, and extend it with LRMI metadata, badges, or signup forms.
How does it work?
The template expects you to download the files, initialize a git repository with a gh-pages branch, and push it to GitHub. Then you update _config.yml with your repository URL and analytics IDs, fill in _data/course.yml, and author lesson content as Markdown posts with the category 'contents'. GitHub takes care of building and hosting the static site.
FAQ
Is the Jekyll Course Template free?
Yes, the template code is released under the MIT license, which permits free use, modification, and distribution. Any course content you add is by default set to publish under the CC-BY-SA license.
Do I need a server to run it?
No server is required. The template is designed for GitHub Pages, which serves the static site directly from a gh-pages branch in a GitHub repository.
Can I use it for a MOOC?
The template is described as "not a MOOC". It is intended for simple open courses or learning circles rather than large-scale massive open online courses with enrollments and grading.
How do I add course lessons?
Create a Markdown file in the _posts folder with a filename starting with a date, such as 2020-01-01-introduction.md. The date determines the order of the lessons, and you must add the category 'contents' to the post's front matter for it to appear on the course about page.





