Modules Template is a Jekyll static site generator that gives academics and researchers a free, portable website for course materials, scientific blogs, and project showcases with built-in support for Jupyter notebooks and Reveal.js presentations.
What is Modules Template?
Modules Template is an open-source Jekyll template created for academic and research web publishing. It takes Markdown content, Jupyter notebooks, and Reveal.js slide decks as inputs and produces a static HTML website that runs on GitHub Pages. The template is maintained by trallard, and the repository includes a live demo and a separate documentation site with setup and advanced guides.
What makes Modules Template stand out?
- Jupyter notebook integration — Uses nbconvert to render notebooks directly within the site, supporting literate-programming workflows where code and prose live together.
- Reveal.js presentation hosting — Publish HTML slide decks as part of the same static site, so conference talks and lecture slides do not need external hosting.
- Azure Notebooks launch button — A badge on the repository opens the project in Microsoft Azure Notebooks for quick, cloud-based testing of notebook content.
- GitHub Pages ready — The template is designed for free deployment at the GitHub Pages domain and can be migrated to other static hosts if needed.
- Course and blog support — Create university module pages and scientific blog posts with standard Jekyll Markdown; the page links to two live course examples built with the template.
- Portable between institutions — Because the site is a set of static files, moving between jobs or universities does not require migrating a database or backend.
Who is Modules Template for?
- University lecturers — Build a module website that centralizes lecture notes, assignments, and schedules, as shown by the COM3240 Adaptive Intelligence course example.
- Researchers — Publish a scientific blog that mixes text with executable notebooks and slide decks, keeping all content in one repository.
- Lab groups and students — Create a free project showcase with papers, posters, and presentations that stays available even after leaving an institution.
What can you do with Modules Template?
- Publish a course site — Structure an academic module with pages and posts, following the BioInformatics Awareness Days example.
- Write notebook-driven posts — Embed Jupyter notebooks into blog posts so readers see the code and live outputs without leaving the page.
- Host slide decks — Add Reveal.js presentations alongside written content, giving a single source for talks and notes.
How does Modules Template work?
Modules Template follows the standard Jekyll workflow: you clone the repository, edit the site configuration and Markdown files, then push the branch to GitHub to trigger a GitHub Pages build. Full instructions are available in the separate documentation site, and a live demo shows the template in action.
FAQ
Is Modules Template free?
Yes, Modules Template is open source and designed for free hosting on GitHub Pages. Using the template requires only a GitHub account, and no paid tiers or costs are mentioned in the repository.
What integrations does Modules Template support?
It integrates with Jupyter notebooks via nbconvert, Reveal.js presentations, and Microsoft Azure Notebooks through a launch button. Standard Jekyll features such as blog posts and Markdown pages are also supported.
Where can I find Modules Template documentation?
The complete documentation is hosted at http://bitsandchips.me/Modules-template-docs, covering both getting-started steps and advanced features like customizing presentations and notebook outputs.
Can I use Modules Template for a university course?
Yes. The repository lists two course sites built with the template: COM3240 Adaptive Intelligence and BioInformatics Awareness Days, so it is proven for academic course publishing.
Does Modules Template only work on GitHub Pages?
No. While the template is designed for GitHub Pages and tested with Travis CI, the static HTML output means it can be hosted on any web server or static hosting service.





