Skip to content

Repository files navigation

🏫 Grav Open MultiCourse Hub

Ready-to-Run Skeleton Package

An open, collaborative home for several courses in one site – inside or outside your LMS, with content in portable Markdown files you control.

Grav Discord Chat Latest Release License PHP

Try the demo

A free, open-source alternative to Grav Helios Course Hub, built on Grav CMS and the Bootstrap4 Open Matter theme, with Markdown file-based content, a built-in Admin panel, and no database required. Helios Course Hub, built on the premium Helios theme, adds a more refined design, a table of contents on pages, automatic single or multi-course setup, and Common Cartridge import from Canvas or another LMS.

MultiCourse Hub homepage with course cards for three example courses Course homepage for CPT363-1 with weekly reminders, required reading, and a course sidebar with LMS links

Open MultiCourse Hub – Courses homepage (left) and a course homepage (right)

A complete, pre-configured package that gives several courses an open and collaborative home in a single site, inside or outside your LMS. Each course has its own pages, header image, sidebar, and footer, and content can also be shared between courses. Content is stored as simple Markdown files you can keep locally, with a built-in Admin panel for browser-based editing and no database required. Runs on nearly any web hosting service.

What Sets It Apart

  • Several courses, one site – a homepage of course cards, with each course getting its own navigation, header image, sidebar, footer, NavBar colour, and favicon
  • Share content between courses – reuse any page or section across courses with the included Page Inject plugin
  • LMS embedding without LTI – add /chromeless:true or ?embedded=true to any page URL to show only its content, or display the whole site without its menu, sidebar, and footer
  • Open authoring built in – Git Sync keeps the site in step with GitHub or a similar Git service, with "Edit this Page" links to each page's Markdown source
  • A course-ready structure – weekly units listed newest first, "What's Happening This Week" reminders, plus schedule, resources, and syllabus pages in every course
  • Rich embeds – Google Slides, H5P, PDF, iFrame, Embedly, and link preview cards, plus badges and buttons, all with shortcodes, and GitHub-style alerts (> [!NOTE]) for callouts
  • Course content shortcodes – learning objectives, key takeaways, reflections, definitions, examples, case studies, references, and more, with the same shortcodes as Grav Helios Course Hub
  • Course search – search the current course from its sidebar (an all-courses box can be added to the homepage)
  • Visual styles – 2026 Refresh or Classic, with optional Dark Mode
  • Portable by design – your content is plain Markdown files on your server, ready to move to any tool or host if your needs change

When is Grav Open MultiCourse Hub a Good Candidate?

Grav Open MultiCourse Hub is a good fit when you:

  • Want lightweight, open companion sites for several courses, managed in one installation
  • Want each course to have its own look – header image, sidebar, footer, NavBar colour, and favicon
  • Value Git-based, open authoring of course materials
  • Prefer a simple Bootstrap look you can adjust through theme options

Other options might be better when you:

  • Want a structured course site with a table of contents on pages, a more refined design, and Common Cartridge import from Canvas or another LMS – consider Grav Helios Course Hub, built on the premium Helios theme
  • Have only one course – the Grav Open Course Hub is a simpler starting point
  • Want a guide or open textbook-style resource alongside a blog, rather than weekly course companions – consider Grav Open Publishing Space
  • Need real LMS features such as enrollment, grading, or student progress tracking

Already running Open MultiCourse Hub? See moving to Grav Helios Course Hub for step-by-step migration guidance. Content using the shared shortcodes (including [topics] and the course content shortcodes), GitHub-style alerts, and course card fields moves across unchanged.

Quick Start

Open MultiCourse Hub is best suited for authors and educators comfortable with web hosting and folder-based content. An online Admin panel is included for browser-based editing – no code editor required.

Pre-flight Checklist

  1. Confirm your web server meets Grav's requirements (PHP 8.3 or higher, or PHP 8.0.2 or higher for the Grav 1.7 version)
  2. Have your web server login credentials ready (username and password)

Installation Steps

  1. Download the Open MultiCourse Hub Skeleton package (a Grav 1.7 version is also available on the release page)
  2. Unzip the package onto your desktop
  3. Copy the entire Grav Open MultiCourse Hub folder to your web server
  4. Open your browser and go to your site's URL
  5. Create your site administrator account when prompted
  6. You're done! – press the preview icon in the Admin Panel to view your site

Tip

When copying the Grav Open MultiCourse Hub folder to your web server, copy the entire folder – it contains hidden files (such as .htaccess) that are not selected by default. Omitting these hidden files can cause problems when running Grav.

Course Setup

  • Site name and description – in the Admin Panel under Configuration → Site
  • Courses homepage – the Home page shows a card for each course; edit its welcome text, and set the card width and order in its page options. Each card uses its course's header image
  • Courses – each course is a top-level folder (cpt363-basic, cpt363-intermediate, cpt363-advanced) with its own Home, Schedule, Resources, and Syllabus pages. In the course's page options, set its title, card title and description, instructor, badge, group heading, and card image, whether it appears on the homepage, its home page, and its NavBar background colour
  • Adding a course – copy an existing course folder and rename it, or use Pages → Add with the Subsite page type (or the Course page type, which uses a course.md file as in Grav Helios Course Hub)
  • Course-specific parts – each course has its own sidebar, footer, and headerimage pages, and an optional favicon page; when a course leaves one out, the site-wide version is used
  • Within each course – weekly units, reminders, and pages work as in the Grav Open Course Hub
  • Sharing content – include any page in another course with [plugin:page-inject](/cpt363-basic/resources)
  • Look and options – under Themes → My Theme: Theme Style, Dark Mode, NavBar, chromeless site, and Creative Commons license (see the Bootstrap4 Open Matter README for all options)
  • LMS embedding – add /chromeless:true or ?embedded=true to any page URL, for example /cpt363-basic/home/chromeless:true; each course's lms-home page shows just that course's reminders and preparations, ready to embed
  • Git Sync and "Edit this Page" – set up the Git Sync plugin in the Admin Panel, then choose where the link appears and whether it views or edits the source in the theme's Git Sync Link options; add ?edit_link=false to a page URL to hide the link on that page
  • Callouts – start a blockquote with > [!NOTE], > [!TIP], > [!IMPORTANT], > [!WARNING], or > [!CAUTION]; the cpt363-intermediate Home page's announcement shows an example
  • Course content shortcodes – wrap content in [objectives], [key-takeaways], [reflection], [definition], [example], [case-study], [project-brief], [process-note], [feedback-requested], [announcement], [exercise], [references], or [excerpt]; see Week 1 of cpt363-advanced for [objectives] and [references]
  • Topics index – wrap a list of ## A, ## B, … sections in [topics]...[/topics] for an automatic A–Z index; see cpt363-advanced/topics
  • Search – the SimpleSearch plugin is included; to keep a page out of results, add simplesearch: process: false to its frontmatter (each course's lms-home page does this)

Requirements

  • PHP >= 8.3 (or >= 8.0.2 for the Grav 1.7 version)
  • Grav CMS 2.0 (included in the package), or Grav CMS 1.7 in the Grav 1.7 version

Support

Contact and Support

Professional Services

By leveraging his extensive UX design expertise and systems-oriented approach, Paul helps teams and individuals utilize open content in education and publication settings. Professional services include user experience and workflow consulting, premium support subscriptions, workshops, and custom development. Interested? Send a note to paul@hibbittsdesign.org.

License

MIT – Hibbitts Design

About

Open MultiCourse Hub uses a customized version of the Bootstrap4 theme to support a collaborative and version-controlled workflow using Markdown and Git Sync. Includes example multiple course hub content and Admin Panel plugin.

Topics

Resources

Code of conduct

Stars

6 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages