Find the Best Cosmetic Hospitals

Explore trusted cosmetic hospitals and make a confident choice for your transformation.

โ€œInvest in yourself โ€” your confidence is always worth it.โ€

Explore Cosmetic Hospitals

Start your journey today โ€” compare options in one place.

Complete practical Quarto installation + command guide

Quarto is an open-source technical publishing system built on Pandoc. It can create documents, websites, blogs, books, and slides, and supports authoring in Markdown-like .qmd files. It also supports executable content from Python, R, Julia, and JavaScript through Jupyter, Knitr, and Observable integrations. (GitHub) For presentations, Quarto officially supports revealjs, pptx, and beamer; Quartoโ€™s own docs say revealjs is the most capable presentation format unless you specifically need Office or LaTeX output. (Quarto)

1. What you are going to build

For your course-slide automation system, the model should be:

course-topic.qmd
      โ†“
quarto render / quarto preview
      โ†“
HTML reveal.js slides
PDF
PPTX
website
handouts

For your current folder:

cd ~/slides
ls

You already have:

Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd
Introduction_to_Red_Hat_OpenShift_DevOpsSchool.marp.md
Code language: CSS (css)

For Quarto, we will mainly work with:

Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd
Code language: CSS (css)

2. Install Quarto on macOS

Option A: Install using Homebrew

This is the easiest on your Mac:

brew install --cask quarto

Check version:

quarto --version

Check location:

which quarto

Run Quarto health check:

quarto check

Quartoโ€™s getting-started page directs users to install Quarto first and then choose an authoring tool such as VS Code, Jupyter, RStudio, Positron, Neovim, or a normal text editor. (Quarto)

Option B: Install manually

Download the macOS installer from the official Quarto download page and install it like a normal .pkg application.

After install:

quarto --version
quarto check

Option C: Install Homebrew first, then Quarto

If Homebrew itself is not installed:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Code language: JavaScript (javascript)

Then:

brew install --cask quarto
quarto --version

Homebrew describes itself as a package manager for macOS, Linux, and WSL. (Homebrew)

3. Install Quarto on Windows

Preferred method: use the official Windows installer from Quartoโ€™s download page.

After install, open PowerShell and run:

quarto --version
quarto check

Optional Winget method:

winget search Quarto
winget install Posit.Quarto
Code language: CSS (css)

Then close and reopen PowerShell:

quarto --version

If Windows says quarto is not recognized, restart the terminal or check whether Quartoโ€™s install directory was added to PATH.

4. Install Quarto on Linux

For Ubuntu/Debian, use the official .deb package.

Common latest-download style:

wget https://quarto.org/download/latest/quarto-linux-amd64.deb
sudo apt install ./quarto-linux-amd64.deb
quarto --version
quarto check
Code language: JavaScript (javascript)

For Red Hat/CentOS/Fedora style systems, use the .rpm package from the Quarto download page.

Quarto also provides Linux tarball installation for single-user setups. (Quarto)

5. Install recommended editor support

VS Code

Install VS Code extension:

code --install-extension quarto.quarto
Code language: CSS (css)

Or open VS Code:

Extensions โ†’ Search โ€œQuartoโ€ โ†’ Install

Then open your folder:

cd ~/slides
code .

Recommended VS Code extensions for your workflow:

Quarto
Markdown All in One
YAML
Mermaid Markdown Syntax Highlighting
GitLens

6. First Quarto commands to run

Go to your slides folder:

cd ~/slides

Check Quarto:

quarto --version
quarto check

Preview your slide deck:

quarto preview Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd
Code language: CSS (css)

Render your slide deck:

quarto render Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd
Code language: CSS (css)

Render specifically to reveal.js HTML slides:

quarto render Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd --to revealjs
Code language: CSS (css)

Render to PowerPoint:

quarto render Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd --to pptx
Code language: CSS (css)

Render to PDF:

quarto render Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd --to pdf
Code language: CSS (css)

The official CLI docs describe quarto render as the command for rendering files or projects to different document types, with options like --to, --output, --output-dir, --metadata, --execute, and --execute-param. (Quarto)

7. Most important Quarto commands

CommandPurpose
quarto --versionShow installed Quarto version
quarto checkVerify Quarto installation
quarto toolsShow installed dependencies/tools
quarto render file.qmdRender one file
quarto preview file.qmdPreview with live reload
quarto renderRender current project
quarto create projectCreate a project
quarto install tinytexInstall TinyTeX for LaTeX PDF output
quarto install chrome-headless-shellInstall headless browser dependency
quarto publishPublish document/project
quarto inspectInspect project/input configuration
quarto addAdd extension
quarto removeRemove extension
quarto updateUpdate extension or dependency
quarto pandocRun bundled Pandoc
quarto typstRun bundled Typst

The Quarto CLI reference lists the main commands, including render, preview, create, use, add, update, remove, convert, pandoc, typst, run, install, uninstall, tools, publish, capabilities, inspect, and check. (Quarto)

8. Create your first simple Quarto slide file

Create a test folder:

mkdir -p ~/slides/quarto-test/images
cd ~/slides/quarto-test
Code language: JavaScript (javascript)

Create a file:

cat > openshift-intro.qmd <<'EOF'
---
title: "Introduction to Red Hat OpenShift"
subtitle: "DevOpsSchool Training"
author: "Rajesh Kumar"
format:
  revealjs:
    theme: simple
    slide-number: true
    transition: slide
---

# Introduction

## What is OpenShift?

Red Hat OpenShift is an enterprise Kubernetes platform.

---

## Why OpenShift?

- Enterprise Kubernetes
- Built-in security
- Developer experience
- Integrated CI/CD
- Operators
- Monitoring

---

## Example Command

```bash
oc get projects
oc get pods -A
oc get routes -A
Code language: PHP (php)

Summary

  • OpenShift is built on Kubernetes
  • It adds enterprise features
  • It improves developer and operations workflows
    EOF

Preview:

```bash
quarto preview openshift-intro.qmd
Code language: JavaScript (javascript)

Render:

quarto render openshift-intro.qmd
Code language: CSS (css)

Render to specific formats:

quarto render openshift-intro.qmd --to revealjs
quarto render openshift-intro.qmd --to pptx
quarto render openshift-intro.qmd --to pdf
Code language: CSS (css)

9. Basic Quarto file structure

A Quarto file has two major parts:

YAML front matter
Markdown content

Example:

---
title: "My Course"
author: "Rajesh Kumar"
format: revealjs
---

## Slide 1

Content here.

---

## Slide 2

More content here.
Code language: PHP (php)

The YAML front matter controls:

title
author
format
theme
slide numbers
logo
footer
execution settings
output format

The Markdown content controls:

headings
slides
bullets
tables
images
code blocks
speaker notes

10. How slides are created in Quarto

For revealjs, slides are usually created using headings.

Example:

## Slide One

This is slide one.

## Slide Two

This is slide two.
Code language: PHP (php)

You can also create section slides with level-1 headings:

# Section 1

## Topic 1

Content.

## Topic 2

Content.
Code language: PHP (php)

You can also separate slides using horizontal rules:

First slide content.

---

Second slide content.

Quartoโ€™s reveal.js docs explain that slides are delineated using headings, and horizontal rules can also be used for slides without titles. (Quarto)

11. Reveal.js slide deck example for educators

Create:

cat > kubernetes-basics.qmd <<'EOF'
---
title: "Kubernetes Basics"
subtitle: "Instructor-Led Training"
author: "Rajesh Kumar"
format:
  revealjs:
    theme: simple
    slide-number: true
    transition: fade
    incremental: false
---

# Kubernetes Basics

## Learning Objectives

By the end of this session, you will understand:

- What Kubernetes is
- Why Kubernetes is used
- Key Kubernetes resources
- Basic kubectl commands

---

## What is Kubernetes?

Kubernetes is a container orchestration platform.

It helps automate:

- Deployment
- Scaling
- Networking
- Self-healing
- Rollouts and rollbacks

---

## Why Kubernetes?

:::: {.columns}

::: {.column width="50%"}
### Before Kubernetes

- Manual deployments
- Hard scaling
- No standard scheduling
- Complex recovery
:::

::: {.column width="50%"}
### With Kubernetes

- Automated scheduling
- Declarative deployment
- Self-healing
- Easy scaling
:::

::::

---

## Common Commands

```bash
kubectl get nodes
kubectl get pods -A
kubectl get deployments -A
kubectl get svc -A
Code language: PHP (php)

Speaker Notes Example

This slide is visible to students.

::: {.notes}
Explain that Kubernetes is not just a container runner.
It is a platform for managing containerized workloads across a cluster.
:::


Summary

  • Kubernetes manages containers
  • Pods are the smallest deployable unit
  • Deployments manage application rollout
  • Services expose applications
    EOF

Preview:

```bash
quarto preview kubernetes-basics.qmd
Code language: JavaScript (javascript)

Render:

quarto render kubernetes-basics.qmd --to revealjs
Code language: CSS (css)

Quarto reveal.js supports incremental lists, multiple columns, speaker notes, footers/logos, line highlighting, executable code, tabsets, and slide backgrounds. (Quarto)

12. Add images in Quarto slides

Create an images folder:

mkdir -p images

Put images inside:

images/
โ”œโ”€โ”€ openshift-architecture.png
โ”œโ”€โ”€ kubernetes-architecture.png
โ””โ”€โ”€ devopsschool-logo.png

Use image:

## OpenShift Architecture

![](images/openshift-architecture.png)
Code language: PHP (php)

Image with alt text:

![OpenShift Architecture Diagram](images/openshift-architecture.png)

Image with width:

![](images/openshift-architecture.png){width="80%"}
Code language: JavaScript (javascript)

Image centered:

::: {.center}
![](images/openshift-architecture.png){width="75%"}
:::
Code language: JavaScript (javascript)

13. Add logo and footer

Use this in YAML:

---
title: "OpenShift Training"
format:
  revealjs:
    theme: simple
    slide-number: true
    logo: images/devopsschool-logo.png
    footer: "DevOpsSchool"
---
Code language: JavaScript (javascript)

Quarto reveal.js supports logo and footer options. (Quarto)

14. Add background images

Example:

## OpenShift Platform {background-image="images/openshift-bg.png"}

- Enterprise Kubernetes
- Built-in security
- Developer experience
Code language: PHP (php)

Background color:

## Important Concept {background-color="#f5f5f5"}

This slide has a background color.
Code language: PHP (php)

Title slide background:

---
title: "OpenShift Training"
format:
  revealjs:
    theme: simple
title-slide-attributes:
  data-background-image: images/title-bg.png
  data-background-size: cover
  data-background-opacity: "0.5"
---
Code language: JavaScript (javascript)

Quarto reveal.js supports background color, gradient, image, video, and iframe backgrounds. (Quarto)

15. Incremental bullets

Globally enable incremental bullets:

---
format:
  revealjs:
    incremental: true
---
Code language: JavaScript (javascript)

Only one list incremental:

::: {.incremental}
- First point
- Second point
- Third point
:::

Force non-incremental:

::: {.nonincremental}
- Show all at once
- No step-by-step reveal
:::

Pause inside slide:

## Step-by-step Flow

Step 1: Developer pushes code.

. . .

Step 2: CI pipeline builds image.

. . .

Step 3: Kubernetes deploys app.
Code language: PHP (php)

16. Two-column layout

## Kubernetes vs OpenShift

:::: {.columns}

::: {.column width="50%"}
### Kubernetes

- Open-source orchestration
- Flexible
- Requires integrations
:::

::: {.column width="50%"}
### OpenShift

- Enterprise Kubernetes
- Built-in tools
- Opinionated security
:::

::::
Code language: PHP (php)

17. Tables

## Kubernetes vs OpenShift

| Area | Kubernetes | OpenShift |
|---|---|---|
| Type | Container orchestration | Enterprise Kubernetes platform |
| Security | Configurable | Strong defaults |
| Developer tools | External | Built-in |
| Registry | External | Integrated |
| Routes | Not native | Built-in |
Code language: PHP (php)

18. Code blocks

Static code block:

```bash
kubectl get pods -A
oc get routes -A
```
Code language: JavaScript (javascript)

YAML code block:

```yaml
apiVersion: v1
kind: Pod
metadata:
  name: nginx
spec:
  containers:
    - name: nginx
      image: nginx
```
Code language: JavaScript (javascript)

Line numbers:

```{.yaml code-line-numbers="1-4"}
apiVersion: v1
kind: Pod
metadata:
  name: nginx
```
Code language: JavaScript (javascript)

Progressive line highlighting:

```{.yaml code-line-numbers="|1|2|3-4"}
apiVersion: v1
kind: Pod
metadata:
  name: nginx
```
Code language: JavaScript (javascript)

Quarto reveal.js supports line highlighting for code blocks, including progressive highlighting. (Quarto)

19. Speaker notes

## What is OpenShift?

OpenShift is Red Hatโ€™s enterprise Kubernetes platform.

::: {.notes}
Explain that OpenShift is Kubernetes plus enterprise capabilities:
security, operators, registry, routes, monitoring, and developer tools.
:::
Code language: PHP (php)

Presenter view:

Press S during reveal.js presentation
Code language: CSS (css)

Basic reveal.js navigation includes arrow keys, space, N, P, and fullscreen with F; Quartoโ€™s presenting docs also describe speaker view, navigation menu, overview mode, printing to PDF, drawing/chalkboard, and multiplex presentation features. (Quarto)

20. Render command examples

Render based on YAML format

quarto render course.qmd
Code language: CSS (css)

Render to reveal.js

quarto render course.qmd --to revealjs
Code language: CSS (css)

Render to HTML document

quarto render course.qmd --to html
Code language: CSS (css)

Render to PowerPoint

quarto render course.qmd --to pptx
Code language: CSS (css)

Render to Word

quarto render course.qmd --to docx
Code language: CSS (css)

Render to PDF

quarto render course.qmd --to pdf
Code language: CSS (css)

Render to Beamer PDF slides

quarto render course.qmd --to beamer
Code language: CSS (css)

Render to Typst PDF document

quarto render course.qmd --to typst
Code language: CSS (css)

Render with output name

quarto render course.qmd --to revealjs --output openshift-training.html
Code language: CSS (css)

Render to output directory

quarto render course.qmd --to revealjs --output-dir output/html
quarto render course.qmd --to pptx --output-dir output/pptx
quarto render course.qmd --to pdf --output-dir output/pdf

21. Preview command examples

Preview file:

quarto preview course.qmd
Code language: CSS (css)

Preview on specific port:

quarto preview course.qmd --port 7777
Code language: CSS (css)

Preview without opening browser:

quarto preview course.qmd --no-browser
Code language: CSS (css)

Preview without watching input changes:

quarto preview course.qmd --no-watch-inputs
Code language: CSS (css)

Preview and bind to all interfaces:

quarto preview course.qmd --host 0.0.0.0 --port 7777
Code language: CSS (css)

Preview a project:

quarto preview

The preview command renders and previews a document or website project, automatically reloading the browser when input files or resources like CSS change. (Quarto)

22. Create a Quarto project

For one-off slides, you can use a single .qmd file.

For course automation, use a project.

Create website project:

quarto create project website openshift-course
cd openshift-course

Create book project:

quarto create project book openshift-book
cd openshift-book

Create default project interactively:

quarto create project

Quarto websites are designed for publishing groups of documents with shared navigation, rendering options, and visual style; they can be published to GitHub Pages, Netlify, Posit Connect, or other static hosting/intranet options. (Quarto)

23. Recommended course project structure

For your training/course business:

openshift-course/
โ”œโ”€โ”€ _quarto.yml
โ”œโ”€โ”€ slides/
โ”‚   โ”œโ”€โ”€ 01-introduction.qmd
โ”‚   โ”œโ”€โ”€ 02-architecture.qmd
โ”‚   โ”œโ”€โ”€ 03-installation.qmd
โ”‚   โ””โ”€โ”€ 04-lifecycle.qmd
โ”œโ”€โ”€ notes/
โ”‚   โ”œโ”€โ”€ 01-introduction.qmd
โ”‚   โ””โ”€โ”€ 02-architecture.qmd
โ”œโ”€โ”€ labs/
โ”‚   โ”œโ”€โ”€ lab-01-login-cli.qmd
โ”‚   โ””โ”€โ”€ lab-02-deploy-app.qmd
โ”œโ”€โ”€ images/
โ”‚   โ”œโ”€โ”€ devopsschool-logo.png
โ”‚   โ”œโ”€โ”€ openshift-architecture.png
โ”‚   โ””โ”€โ”€ lifecycle.png
โ”œโ”€โ”€ css/
โ”‚   โ””โ”€โ”€ reveal.scss
โ”œโ”€โ”€ templates/
โ”‚   โ””โ”€โ”€ devopsschool-reference.pptx
โ”œโ”€โ”€ output/
โ”‚   โ”œโ”€โ”€ html/
โ”‚   โ”œโ”€โ”€ pdf/
โ”‚   โ””โ”€โ”€ pptx/
โ””โ”€โ”€ build.sh

24. _quarto.yml project config for slides

Create _quarto.yml:

project:
  title: "OpenShift Course"
  output-dir: output

format:
  revealjs:
    theme: [simple, css/reveal.scss]
    slide-number: true
    transition: slide
    logo: images/devopsschool-logo.png
    footer: "DevOpsSchool"
    code-line-numbers: true

execute:
  freeze: auto
Code language: JavaScript (javascript)

Then render project:

quarto render

Preview project:

quarto preview

25. Create custom CSS for reveal.js

Create:

mkdir -p css
cat > css/reveal.scss <<'EOF'
/*-- scss:defaults --*/

$presentation-heading-color: #1f2937;
$presentation-font-size-root: 32px;

/*-- scss:rules --*/

.reveal .slide-logo {
  max-height: 48px !important;
}

.reveal h1,
.reveal h2 {
  font-weight: 700;
}

.reveal code {
  font-size: 0.85em;
}
EOF
Code language: PHP (php)

Use in YAML:

format:
  revealjs:
    theme: [simple, css/reveal.scss]
Code language: CSS (css)

26. Build script for your current two files

For your ~/slides folder:

cd ~/slides
cat > build-quarto.sh <<'EOF'
#!/usr/bin/env bash
set -euo pipefail

QMD="Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd"

mkdir -p output/quarto/html output/quarto/pptx output/quarto/pdf

echo "Checking Quarto..."
quarto --version
quarto check

echo "Rendering reveal.js HTML..."
quarto render "$QMD" --to revealjs --output-dir output/quarto/html

echo "Rendering PowerPoint..."
quarto render "$QMD" --to pptx --output-dir output/quarto/pptx

echo "Rendering PDF..."
quarto render "$QMD" --to pdf --output-dir output/quarto/pdf

echo "Done."
find output/quarto -maxdepth 3 -type f -print
EOF

chmod +x build-quarto.sh
./build-quarto.sh
Code language: PHP (php)

27. Build script for multiple .qmd files

cat > build-all-quarto.sh <<'EOF'
#!/usr/bin/env bash
set -euo pipefail

mkdir -p output/html output/pptx output/pdf

for QMD in *.qmd; do
  echo "Building $QMD"

  echo "HTML reveal.js..."
  quarto render "$QMD" --to revealjs --output-dir output/html

  echo "PPTX..."
  quarto render "$QMD" --to pptx --output-dir output/pptx

  echo "PDF..."
  quarto render "$QMD" --to pdf --output-dir output/pdf
done

echo "All Quarto files built."
find output -type f -print
EOF

chmod +x build-all-quarto.sh
./build-all-quarto.sh
Code language: PHP (php)

28. Install dependencies for PDF and browser export

Install TinyTeX for LaTeX-based PDF:

quarto install tinytex

Install Chrome Headless Shell:

quarto install chrome-headless-shell

Install Chromium legacy option:

quarto install chromium

Install VeraPDF for PDF standards/accessibility validation:

quarto install verapdf

List tools:

quarto tools

The quarto install command installs global dependencies such as TinyTeX, Chromium, Chrome Headless Shell, and VeraPDF. (Quarto)

29. Working with PowerPoint output

Create a PowerPoint output:

quarto render course.qmd --to pptx
Code language: CSS (css)

Use a custom PowerPoint template:

format:
  pptx:
    reference-doc: templates/devopsschool-reference.pptx

Then:

quarto render course.qmd --to pptx
Code language: CSS (css)

Recommended PPTX workflow:

Create clean PPTX reference template
Use it in Quarto
Generate PPTX
Open in PowerPoint
Do final polish only if required
Code language: PHP (php)

30. Working with PDF output

Option A: LaTeX PDF

Install TinyTeX:

quarto install tinytex

YAML:

format: pdf
Code language: HTTP (http)

Render:

quarto render course.qmd --to pdf
Code language: CSS (css)

Option B: Typst PDF

YAML:

format: typst
Code language: HTTP (http)

Render:

quarto render course.qmd --to typst
Code language: CSS (css)

Option C: reveal.js print-to-PDF

Render reveal.js:

quarto render course.qmd --to revealjs
Code language: CSS (css)

Open the HTML presentation in browser and use print/PDF mode.

For reveal.js presentations, Quarto docs note that reveal.js slides can be presented as HTML or printed to PDF for easier distribution. (Quarto)

31. Share HTML slides properly

When Quarto creates reveal.js slides, output may include supporting files.

So instead of sharing only one .html file, share the whole output folder unless you configure embedded resources.

Recommended:

quarto render course.qmd --to revealjs --output-dir output/html

Then share:

output/html/

For website publishing, publish the full site/project output.

32. Create self-contained HTML

Try this YAML for standalone HTML-style sharing:

format:
  revealjs:
    embed-resources: true
Code language: JavaScript (javascript)

Then:

quarto render course.qmd --to revealjs
Code language: CSS (css)

For large courses with images/videos, I still prefer sharing the full output folder or hosting the slides online.

33. Publish Quarto project

Interactive publish:

quarto publish

Publish a document:

quarto publish course.qmd
Code language: CSS (css)

Publish to GitHub Pages:

quarto publish gh-pages

Publish to Netlify:

quarto publish netlify

Publish to Quarto Pub:

quarto publish quarto-pub

Publish without rendering again:

quarto publish gh-pages --no-render

Quarto publish supports providers including Quarto Pub, GitHub Pages, Posit Connect, Posit Connect Cloud, Netlify, Confluence, and Hugging Face Spaces. (Quarto)

34. Create a Quarto website for courses

Create project:

quarto create project website devopsschool-slides
cd devopsschool-slides

Example _quarto.yml:

project:
  type: website
  output-dir: _site

website:
  title: "DevOpsSchool Course Slides"
  navbar:
    left:
      - href: index.qmd
        text: Home
      - href: openshift.qmd
        text: OpenShift
      - href: kubernetes.qmd
        text: Kubernetes
      - href: terraform.qmd
        text: Terraform

format:
  html:
    theme: cosmo
    toc: true
Code language: CSS (css)

Create homepage:

cat > index.qmd <<'EOF'
---
title: "DevOpsSchool Course Slides"
---

# Welcome

This site contains automated training slides, notes, and course handouts.

## Courses

- OpenShift
- Kubernetes
- Docker
- Terraform
- Ansible
EOF
Code language: PHP (php)

Preview:

quarto preview

Render:

quarto render

35. Create course notes/handouts

Create:

cat > openshift-notes.qmd <<'EOF'
---
title: "OpenShift Training Notes"
author: "Rajesh Kumar"
format:
  html:
    toc: true
  pdf:
    toc: true
---

# Introduction

OpenShift is Red Hat's enterprise Kubernetes platform.

# Key Concepts

## Project

A project is OpenShift's enhanced namespace concept.

## Route

A route exposes a service externally.

# Commands

```bash
oc login
oc get projects
oc new-project demo

EOF


Render HTML:

```bash
quarto render openshift-notes.qmd --to html
Code language: JavaScript (javascript)

Render PDF:

quarto render openshift-notes.qmd --to pdf
Code language: CSS (css)

36. Use code execution with Python

Install Jupyter support:

python3 -m pip install jupyter matplotlib pandas plotly

Create:

cat > python-demo.qmd <<'EOF'
---
title: "Python Demo in Quarto"
format: html
execute:
  echo: true
---

# Python Example

```{python}
import pandas as pd

df = pd.DataFrame({
    "Tool": ["Quarto", "Marp", "PowerPoint"],
    "Automation": ["High", "Medium", "Low"]
})

df
Code language: PHP (php)

EOF


Render:

```bash
quarto render python-demo.qmd
Code language: JavaScript (javascript)

Quarto supports embedding code/output from Python, R, Julia, and JavaScript. (GitHub)

37. Use code execution options

In YAML:

execute:
  echo: true
  warning: false
  message: false
Code language: PHP (php)

Per code cell:

```{python}
#| echo: true
#| warning: false
#| message: false

print("Hello Quarto")
```
Code language: PHP (php)

Render without executing code:

quarto render python-demo.qmd --no-execute
Code language: CSS (css)

Render and execute code:

quarto render python-demo.qmd --execute
Code language: CSS (css)

Pass execution parameter:

quarto render report.qmd -P environment:prod
Code language: CSS (css)

38. Use parameters

Create:

cat > param-demo.qmd <<'EOF'
---
title: "Parameterized Course"
format: html
params:
  course_name: "OpenShift"
  instructor: "Rajesh Kumar"
---

# Course: `r params$course_name`

Instructor: `r params$instructor`
EOF
Code language: PHP (php)

For Python/Jupyter style parameter use, parameter workflows depend on engine. For practical slide decks, I usually recommend using YAML variables or template generation from shell/Python.

Render with metadata:

quarto render param-demo.qmd -M title:"OpenShift Course"
Code language: CSS (css)

39. Project profiles

Use profiles for different outputs/environments.

Example files:

_quarto.yml
_quarto-dev.yml
_quarto-prod.yml
Code language: CSS (css)

Render with profile:

quarto render --profile dev
quarto render --profile prod

Good for:

student version
instructor version
client version
public version
internal version
Code language: PHP (php)

40. Useful quarto inspect

Inspect a file:

quarto inspect course.qmd
Code language: CSS (css)

Inspect project:

quarto inspect

Use this when:

YAML output not behaving
format not applied
project config not loaded
wrong output directory

41. Useful quarto tools

quarto tools

Use it to see installed dependencies/tools.

42. Useful quarto check

quarto check

Use it after install or troubleshooting.

43. Useful quarto pandoc

Check bundled Pandoc:

quarto pandoc --version

Convert Markdown using bundled Pandoc:

quarto pandoc input.md -o output.html
Code language: CSS (css)

44. Useful quarto typst

Check Typst:

quarto typst --version

45. Extensions

Add extension:

quarto add extension-name

Remove extension:

quarto remove extension-name

Update extension:

quarto update extension-name

List:

quarto list
Code language: PHP (php)

46. Recommended DevOpsSchool slide template

Create:

mkdir -p ~/slides/quarto-template/images ~/slides/quarto-template/css
cd ~/slides/quarto-template
Code language: JavaScript (javascript)

Create CSS:

cat > css/devopsschool.scss <<'EOF'
/*-- scss:defaults --*/
$presentation-heading-color: #1f2937;
$presentation-font-size-root: 32px;

/*-- scss:rules --*/
.reveal h1 {
  font-weight: 800;
}

.reveal h2 {
  border-bottom: 2px solid #e5e7eb;
  padding-bottom: 0.2em;
}

.reveal code {
  font-size: 0.85em;
}
EOF
Code language: PHP (php)

Create slide:

cat > course-template.qmd <<'EOF'
---
title: "Course Title"
subtitle: "DevOpsSchool Training"
author: "Rajesh Kumar"
format:
  revealjs:
    theme: [simple, css/devopsschool.scss]
    slide-number: true
    transition: slide
    footer: "DevOpsSchool"
---

# Course Title

## Learning Objectives

- Understand the topic
- Learn architecture
- Practice commands
- Troubleshoot issues

---

# What, Why, Where, When, How

## What is this?

Short definition.

## Why is it needed?

- Reason 1
- Reason 2
- Reason 3

---

## Architecture

![](images/architecture.png){width="80%"}

---

## Hands-on Commands

```bash
command-1
command-2
command-3
Code language: PHP (php)

Troubleshooting

IssueCauseFix
Error 1ReasonSolution
Error 2ReasonSolution

Summary

  • Key point 1
  • Key point 2
  • Key point 3
    EOF

Preview:

```bash
quarto preview course-template.qmd
Code language: JavaScript (javascript)

47. Full command cheat sheet

# Version and health
quarto --version
quarto check
quarto tools

# Render
quarto render file.qmd
quarto render file.qmd --to html
quarto render file.qmd --to revealjs
quarto render file.qmd --to pptx
quarto render file.qmd --to pdf
quarto render file.qmd --to docx
quarto render file.qmd --output custom-name.html
quarto render file.qmd --output-dir output/html

# Preview
quarto preview file.qmd
quarto preview file.qmd --port 7777
quarto preview file.qmd --no-browser
quarto preview file.qmd --host 0.0.0.0
quarto preview file.qmd --no-watch-inputs

# Project
quarto create project
quarto create project website mysite
quarto create project book mybook
quarto render
quarto preview

# Dependencies
quarto install tinytex
quarto install chrome-headless-shell
quarto install chromium
quarto install verapdf

# Publish
quarto publish
quarto publish gh-pages
quarto publish netlify
quarto publish quarto-pub
quarto publish file.qmd

# Debug/inspect
quarto inspect
quarto inspect file.qmd
quarto pandoc --version
quarto typst --version

# Extensions
quarto add extension-name
quarto remove extension-name
quarto update extension-name
quarto list
Code language: PHP (php)

48. Your exact commands now

Run this on your Mac:

cd ~/slides

# Install Quarto if not installed
brew install --cask quarto

# Verify
quarto --version
quarto check

# Preview your existing Quarto file
quarto preview Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd

# Render HTML reveal.js slides
quarto render Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd --to revealjs

# Render PPTX
quarto render Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd --to pptx

# Install PDF dependency if needed
quarto install tinytex

# Render PDF
quarto render Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd --to pdf

# Check generated files
ls -lh
find . -maxdepth 3 -type f \( -name "*.html" -o -name "*.pptx" -o -name "*.pdf" \) -print
Code language: PHP (php)

49. Best folder structure for your current testing

cd ~/slides

mkdir -p images css output/html output/pdf output/pptx templates

ls -lh

Recommended:

slides/
โ”œโ”€โ”€ Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd
โ”œโ”€โ”€ images/
โ”œโ”€โ”€ css/
โ”œโ”€โ”€ templates/
โ””โ”€โ”€ output/
    โ”œโ”€โ”€ html/
    โ”œโ”€โ”€ pdf/
    โ””โ”€โ”€ pptx/

50. Best build script for your current file

cd ~/slides

cat > build.sh <<'EOF'
#!/usr/bin/env bash
set -euo pipefail

QMD="Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd"

mkdir -p output/html output/pptx output/pdf

echo "Quarto version:"
quarto --version

echo "Rendering HTML reveal.js..."
quarto render "$QMD" --to revealjs --output-dir output/html

echo "Rendering PPTX..."
quarto render "$QMD" --to pptx --output-dir output/pptx

echo "Rendering PDF..."
quarto render "$QMD" --to pdf --output-dir output/pdf

echo "Generated files:"
find output -type f -print
EOF

chmod +x build.sh
./build.sh
Code language: PHP (php)

51. Troubleshooting

Problem: quarto: command not found

macOS:

which quarto
echo $PATH
brew reinstall --cask quarto
quarto --version
Code language: PHP (php)

Try a new terminal window.

Windows:

where.exe quarto
quarto --version
Code language: CSS (css)

Restart PowerShell after installation.

Linux:

which quarto
quarto --version

Problem: PDF fails

Install TinyTeX:

quarto install tinytex

Then:

quarto render file.qmd --to pdf
Code language: CSS (css)

Problem: reveal.js PDF does not match HTML

Use browser print mode from reveal.js HTML, or simplify slide-specific effects.

Problem: images do not show

Check:

pwd
ls -lh images/

Use relative path:

![](images/my-image.png)

Avoid absolute path:

![](/Users/rajesh/Desktop/my-image.png)
Code language: JavaScript (javascript)

Problem: YAML error

YAML is indentation-sensitive.

Bad:

format:
revealjs:
theme: simple

Good:

format:
  revealjs:
    theme: simple

Problem: preview port busy

Use another port:

quarto preview file.qmd --port 7777
Code language: CSS (css)

Problem: browser does not open

quarto preview file.qmd --no-browser
Code language: CSS (css)

Then copy the local preview URL from terminal.

Problem: PPTX output looks different

That is normal. HTML/reveal.js and PPTX are different formats.

Fixes:

Use simpler layouts
Avoid complex reveal.js-only features
Use a PowerPoint reference template
Test PPTX early
Use standard fonts
Code language: CSS (css)

Problem: code execution fails

Check Python/Jupyter:

python3 --version
python3 -m pip install jupyter

Check Quarto:

quarto check

52. Best practice for educator automation

Use this rule:

One source file: .qmd
Local images: images/
Branding: css/ and templates/
Automation: build.sh
Outputs: html/pdf/pptx
Version control: git

Recommended daily workflow:

cd ~/slides

# edit file
code Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd

# preview while editing
quarto preview Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd

# build all outputs
./build.sh

# check output
find output -type f -print
Code language: PHP (php)

53. Final recommended command sequence for you

Run this first:

cd ~/slides
brew install --cask quarto
quarto --version
quarto check
quarto preview Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd

Then generate all outputs:

mkdir -p output/html output/pptx output/pdf

quarto render Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd --to revealjs --output-dir output/html
quarto render Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd --to pptx --output-dir output/pptx

quarto install tinytex
quarto render Introduction_to_Red_Hat_OpenShift_DevOpsSchool.qmd --to pdf --output-dir output/pdf

find output -type f -print
Code language: PHP (php)

For your long-term course automation, use:

Quarto as master system
.qmd as source
reveal.js as main slide output
PDF as student handout
PPTX as client/trainer output
build.sh for automation
Git for version control
Code language: JavaScript (javascript)

That is the cleanest Quarto workflow for you.

Find Trusted Cardiac Hospitals

Compare heart hospitals by city and services โ€” all in one place.

Explore Hospitals
Iโ€™m a DevOps/SRE/DevSecOps/Cloud Expert passionate about sharing knowledge and experiences. I have worked at <a href="https://www.cotocus.com/">Cotocus</a>. I share tech blog at <a href="https://www.devopsschool.com/">DevOps School</a>, travel stories at <a href="https://www.holidaylandmark.com/">Holiday Landmark</a>, stock market tips at <a href="https://www.stocksmantra.in/">Stocks Mantra</a>, health and fitness guidance at <a href="https://www.mymedicplus.com/">My Medic Plus</a>, product reviews at <a href="https://www.truereviewnow.com/">TrueReviewNow</a> , and SEO strategies at <a href="https://www.wizbrand.com/">Wizbrand.</a> Do you want to learn <a href="https://www.quantumuting.com/">Quantum Computing</a>? <strong>Please find my social handles as below;</strong> <a href="https://www.rajeshkumar.xyz/">Rajesh Kumar Personal Website</a> <a href="https://www.youtube.com/TheDevOpsSchool">Rajesh Kumar at YOUTUBE</a> <a href="https://www.instagram.com/rajeshkumarin">Rajesh Kumar at INSTAGRAM</a> <a href="https://x.com/RajeshKumarIn">Rajesh Kumar at X</a> <a href="https://www.facebook.com/RajeshKumarLog">Rajesh Kumar at FACEBOOK</a> <a href="https://www.linkedin.com/in/rajeshkumarin/">Rajesh Kumar at LINKEDIN</a> <a href="https://www.wizbrand.com/rajeshkumar">Rajesh Kumar at WIZBRAND</a> <a href="https://www.rajeshkumar.xyz/dailylogs">Rajesh Kumar DailyLogs</a>

Related Posts

Complete Marp installation + command + examples guide

Marp is a Markdown presentation ecosystem. Marp CLI converts Marp/Marpit Markdown files into static HTML/CSS, PDF, PowerPoint/PPTX, and images. The official CLI docs also say Node.js v18+…

Read More

The Best Way to Create Slides for Educators: A High-Level Guide to Automated Course Slide Generation

Meta Description A complete high-level guide for educators, trainers, and course creators on how to automate slide creation using Markdown, templates, images, reusable content, and multi-format exports…

Read More

Quarto vs Marp: The Complete Educatorโ€™s Guide to Automated Slide Creation Using Markdown

Meta Description A complete tutorial comparing Quarto and Marp for educators, trainers, DevOps instructors, and course creators. Learn which tool to use for automated slides, PPTX, PDF,…

Read More

Strategic Reliability: Mastering Service Level Objectives in Modern DevOps

Introduction In the early days of IT operations, reliability was often reduced to a binary metric: was the system up or down? This rigid pursuit of “five-nines”…

Read More

DevOps KPIs: A Guide to Engineering Growth

Introduction Engineering teams often prioritize speed, yet without clear, measurable indicators, growth frequently stalls amidst technical debt and reactive firefighting. To move from intuition to data-driven excellence,…

Read More

Openshift Labs & Assignment

Openshift: Lab 1 โ€“ Use the terminal window within the Red Hat OpenShift web console Openshift: Lab 2 โ€“ Install an application from source code in a…

Read More
Subscribe
Notify of
guest
0 Comments
Newest
Oldest Most Voted
0
Would love your thoughts, please comment.x
()
x