- Each slide is its own markdown file located in
src/content/slides
and named after its position in the presentation (e.g. the file0.md
is the first slide). - Each slide contains one piece of frontmatter that determines the layout of the slide. The
layoutTemplate
property takes an array of strings which are mapped to CSS classes. - 11ty creates a collection containing all markdown files in
src/content/slides
. src/index.njk
uses nunjucks templating to map each slide in the collection to a HTML<article>
.
yarn dev
- Run the development server.yarn build
- Generates the presentation inside thedist
folder.
- ← - Previous slide.
- → or space - Next Slide
If the slide contains an interactive element that requries the use of the spacebar for functionality, the spacebar navigation can be disabled for that slide by adding 'no-spacebar'
to the layoutTemplate array in the slide's markdown file.
-
All React logic is located in
src/react
. -
Each component has its own folder.
-
app.js
is used to render each component usingReactDOM.render
. -
Markdown files that use React components will include:
<div class="react-container" id="counter"></div>
Where the id is the name of the component.
The currently supported layouts are:
- title-slide
- vertical-split
- header-and-content
- no-spacebar