diff --git a/README.Rmd b/README.Rmd
index 01419df..8da2e04 100644
--- a/README.Rmd
+++ b/README.Rmd
@@ -50,6 +50,44 @@
     - Get in bed
     - Count sheep
 
+## Rendering 
+
+Depening on your use case, there are 3 ways you can render the presentation.
+
+1. RStudio
+2. R console
+3. Terminal (e.g., bash)
+
+### RStudio
+
+When creating the presentation in RStudio, there will be a `Knit` button
+right below the source tabs.
+By default, it will render the current document and place the rendered `HTML` file in the same directory as the source file, with the same name.
+
+Note: Unlike the the other slideshow outputs, the slideshow viewer popup from rstudio will be blank,
+to view the slide show click the `open in browser` button,
+and the slide show will render in your default web browser.
+
+### R Console
+
+The `Knit` button is actually calling the `rmarkdown::render()` function.
+So, to render the doucment within the R console:
+
+```r
+rmarkdown::render('my_reveal_presentation.Rmd')
+```
+
+There are many other output tweaks you can use by directly calling `render`.
+You can read up on the [documentation](https://cran.r-project.org/web/packages/rmarkdown/rmarkdown.pdf) for more details.
+
+### Command Line
+
+When you need the presentation to be rendered from the command line:
+
+```bash
+Rscript -e "rmarkdown::render('my_reveal_presentation.Rmd')"
+```
+
 ## Display Modes
 
 The following single character keyboard shortcuts enable alternate
diff --git a/README.md b/README.md
index 0f620b5..dffc4a8 100644
--- a/README.md
+++ b/README.md
@@ -2,6 +2,7 @@
 ================
 
 -   [Overview](#overview)
+-   [Rendering](#rendering)
 -   [Display Modes](#display-modes)
 -   [Incremental Bullets](#incremental-bullets)
 -   [Appearance and Style](#appearance-and-style)
@@ -59,6 +60,39 @@
     - Get in bed
     - Count sheep
 
+Rendering
+---------
+
+Depening on your use case, there are 3 ways you can render the presentation.
+
+1.  RStudio
+2.  R console
+3.  Terminal (e.g., bash)
+
+### RStudio
+
+When creating the presentation in RStudio, there will be a `Knit` button right below the source tabs. By default, it will render the current document and place the rendered `HTML` file in the same directory as the source file, with the same name.
+
+Note: Unlike the the other slideshow outputs, the slideshow viewer popup from rstudio will be blank, to view the slide show click the `open in browser` button, and the slide show will render in your default web browser.
+
+### R Console
+
+The `Knit` button is actually calling the `rmarkdown::render()` function. So, to render the doucment within the R console:
+
+``` r
+rmarkdown::render('my_reveal_presentation.Rmd')
+```
+
+There are many other output tweaks you can use by directly calling `render`. You can read up on the [documentation](https://cran.r-project.org/web/packages/rmarkdown/rmarkdown.pdf) for more details.
+
+### Command Line
+
+When you need the presentation to be rendered from the command line:
+
+``` bash
+Rscript -e "rmarkdown::render('my_reveal_presentation.Rmd')"
+```
+
 Display Modes
 -------------
 
