A template repository for creating academic lecture courses using Jekyll and LaMD (Literate Academic Markdown).
# Clone the template
git clone https://github.com/lawrennd/lamd-lecture.git my-course
cd my-course
# Run the installation script
./install.sh
The installer will:
- Ask for your course details
- Set up the directory structure
- Configure the templates
- Initialize git repository
- Optionally create a GitHub repository
lamd-lecture provides a skeleton structure for building lecture courses with the following features:
- Multiple output formats (slides, notes, web pages) from a single markdown source
- Jekyll-based website generation for course materials
- LaMD macros for consistent content rendering
- Use this repository as a template
- Configure
_config.yml
with your course details - Update
_lamd/_lamd.yml
with your personal information and output preferences - Add lecture content to the
_lamd
directory - Compile lectures with
maketalk
command
lecture-course/
├── _config.yml # Jekyll configuration
├── _lamd/ # LaMD files containing lecture sources
│ └── _lamd.yml # LaMD configuration (author, output formats, paths)
├── _lectures/ # Compiled Lecture html files
├── _notebooks/ # Compiled Jupyter notebooks
├── _practicals/ # Compiled Practical exercises
├── assets/ # Static assets (images, js, css)
├── index.md # Home page
└── slides/ # Compiled reveal.js presentation slides
Lectures are compiled using the maketalk
command:
cd _lamd
maketalk 01-introduction.md
The _lamd/_lamd.yml
file controls how your lectures are processed and where outputs are stored. Key settings include:
author
: Your personal informationpostsdir
,slidesdir
, etc.: Output directories for different formatsposts
,docx
,pptx
, etc.: Enable/disable different output formatsbaseurl
,url
: Website configuration for GitHub Pages
See the repositories at mlphysical or advds for examples of complete lecture courses using the LaMD system.
For more information about LaMD, see the LaMD documentation.