Learning MDX Deck: Getting Started

davefollett

Dave Follett

Posted on May 13, 2019

Learning MDX Deck: Getting Started

πŸ™‹ What is MDX Deck?

MDX Deck was created by Brent Jackson (@jxnblk) and is a tool for creating presentation deck websites using MDX. MDX provides the ability to use React’s JSX inside Markdown. The combination creates a powerful experience for building a web-based presentation deck. Here are a list of features, as listed on the MDX Deck GitHub Page:

  • πŸ“ Write presentations in markdown
  • βš› Import and use React components
  • πŸ’… Customizable themes and components
  • 0️⃣ Zero-config CLI
  • πŸ’β€β™€οΈ Presenter modeοΏΌ
  • πŸ““ Speaker notes

πŸ—οΈ Installation

First make sure you have node installed and paste the following as package.json into a new file. Alternatively, you can run: npm init to generate a package.json file.

{
"name": "demo-mdx-deck",
"version": "1.0.0",
"description": "Demo MDX Deck",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
  },
"author": "Dave Follett",
"license": "MIT"
}
Enter fullscreen mode Exit fullscreen mode

Next, install mdx-deck with the following command.

npm i -D mdx-deck
Enter fullscreen mode Exit fullscreen mode

πŸƒβ€β™€οΈ Getting Started

To create a simple presentation, create a file named deck.mdx and copy the following contents into it.

# SLIDE 1 - LIST

* I am a bullet list item
* I am another bullet list item
* I am another bullet list item

---

# SLIDE 2 - HEADERS

## Header 2
### Header 3
#### Header 4
##### Header 5

---

# SLIDE 3 - TABLE

| Fruit         | Weight   | Cost  |
| ------------- | ---------| ----- |
| Strawberries  | 16oz     | $3.99 |
| Blueberries   | 8oz      | $2.99 |
| Grapes        | 12oz     | $3.75 |
Enter fullscreen mode Exit fullscreen mode

Each slide is separated by ---. To see the presentation in action, add the following to the scripts section of package.json.

"scripts": {
  "start": "mdx-deck deck.mdx"
}
Enter fullscreen mode Exit fullscreen mode

And run the following command to start the development server.

npm start
Enter fullscreen mode Exit fullscreen mode

The presentation can be viewed at http://localhost:8080/.

Animation of the MDX Deck example

⌨️ Keyboard Shortcuts

The following keyboard shortcuts can be used to interact with the presentation.

Key Description
Left Arrow Go to previous slide (or step in Appear)
Right Arrow Go to next slide (or step in Appear)
Space Go to next slide (or step in Appear)
Alt + P Toggle Presenter Mode
Alt + O Toggle Overview Mode
Alt + G Toggle Grid Mode

🏁 Conclusion

As you can see, you can get up and running with MDX Deck pretty quickly. There is a lot more to MDX Deck than I have shown here. Coming up πŸ”œ, I will be exploring more of the features it provides, such as, importing react components, layouts, themes, speaker notes, and deploying to Netlify.

πŸ’– πŸ’ͺ πŸ™… 🚩
davefollett
Dave Follett

Posted on May 13, 2019

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related