Caltech Library logo





mkslides converts a Markdown file into a sequence of HTML5 slides using the key/value pairs to populate the templates and render to stdout.


mkslides is based on mkpage with the difference that multiple pages result from a single Markdown file. To manage the linkage between slides some predefined template variables is used.

In your custom templates these should be exist to link everything together as expected. In addition you may want to include JavaScript to allow mapping actions like “next slide” to the space bar or mourse click.



	-c	Specify the CSS file to use
	-css	Specify the CSS file to use
	-h	display help
	-help	display help
	-j	Specify the JavaScript file to use
	-js	Specify the JavaScript file to use
	-l	display license
	-license	display license
	-m	Markdown filename
	-markdown	Markdown filename
	-p	Presentation title
	-presentation-title	Presentation title
	-s	display the default template
	-show-template	display the default template
	-t	A colon delimited list of HTML templates to use
	-templates	A colon delimited list of HTML templates to use
	-v	display version
	-version	display version


In this example we’re using the default slide template. Here’s an example of a three slide presentation

    Welcome to [mkslides](../)
    by R. S. Doiel, <>


    # mkslides

    _mkslides_ can generate multiple HTML5 pages from
    one markdown file.  It splits the markdown file
    on each "--" 


    Thank you

    Hope you enjoy [mkslides](

If you saved this as you can run the following command to generate slides

    mkslides "Title=text:My Presentation" \

Using a custom template would look like

    mkslides -t custom-slides.tmpl \
        "Title=text:My Presentation" \

This would result in the following webpages