Skip to content

ICHEC/simple-slides

 
 

Repository files navigation

📑 Lecture Slides with Jekyll + Reveal.js

This repository hosts lecture slides built using Reveal.js on top of a simple Jekyll site. It provides a clean and reproducible way to organize multiple lecture decks, render them as interactive slides, and optionally extend them with features like math rendering and audio narration.

🚀 Features

Feature Description
Markdown-based slides Write slides in plain Markdown (index.md in each lecture folder).
Reveal.js integration Modern HTML5 slides with themes, transitions, code highlighting, and MathJax.
Multi-lecture organization Each lecture lives in its own folder (lecture1/, lecture2/, …) and is fully self-contained (slides + images + assets).
Automatic lecture index. The home page lists all lectures as cards with clickable links.
Math support LaTeX equations rendered with MathJax ($x^2$, $\alpha$, …).
Custom styling Extend via assets/custom.css.
(Experimental) Audio narration Reveal.js plugin support is included for recording or embedding per-slide audio.

📂 Repository Structure

$ tree
.
├── _config.yml         # Jekyll configuration
├── _layouts/slide.html # Layout for slides
├── index.html          # Main landing page (lists lectures as cards)
├── lecture1/
│ └── index.md          # Markdown source for Lecture 1 slides
├── lecture2/
│ └── index.md
├── lecture3/
│ └── index.md
├── assets/
│ ├── reveal/           # Reveal.js core + plugins
│ └── custom.css        # Optional CSS overrides
└── README.md
  • Each lecture folder contains a single index.md file (with front matter + slides).
  • Slides are separated using --- (horizontal) and -- (vertical) markers inside the Markdown.

🖥️ Usage

1. Run locally

Install dependencies:

gem install bundler jekyll
bundle install

Serve site locally:

bundle exec jekyll serve

Then open http://127.0.0.1:4000 in your browser.

2. Write slides

Inside lectureX/index.md, for example lecture1/index.md use standard Markdown:

---
layout: slide
title: Lecture 1: Quantum Basics
---

# Introduction

Welcome to **Quantum Basics**.

---

## Schrödinger Equation

The time-dependent form is:

$$ i \hbar \frac{\partial}{\partial t} \Psi = \hat{H} \Psi $$
  • --- creates new slide (horizontal)
  • -- creates new sub-slide (vertical)
  • Note: adds speaker notes.

3. Deploy

This repo can be hosted on Github Pages directly. Push your github repo -> Slides auto-publish -> share the URL!

🎨 Customization

🎙️ Audio Narration (Optional)

This setup includes support for reveal.js-plugins/audio-slideshow.

  • Press r to record narration per slide (browser will ask for microphone access).

  • Press z to download recordings as a ZIP.

  • Place exported audio files in the same lecture folder to bundle with slides.

(Experimental: may require additional setup.)

🙌 Contributing

Contributions and suggestions are welcome! Open an issue or PR if you’d like to add features, fix bugs, or improve documentation.

Feedback

Please reach out for any feedback.

🔗 Credits

About

A revealjs based setup for creating quick slides in markdown.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 89.1%
  • HTML 10.0%
  • Other 0.9%