Project Types

Presentation

Minimal structure for slides and presentations

Overview

The Presentation type is a minimal structure for focused, single-output work like conference presentations, standalone reports, or one-off analyses.

Directory Structure

my-presentation/
├── presentation.qmd     # Main document
└── settings.yml         # Configuration

Optional directories available in the GUI: data/, functions/, outputs/, scripts/

Creating a Presentation

new_presentation("quarterly-report", "~/presentations/q4")

This creates a streamlined structure with a main presentation.qmd file.

Configuration

Example settings.yml:

default:
  project_type: presentation

  directories:
    data: data

  packages:
    - name: dplyr
      auto_attach: true
    - name: ggplot2
      auto_attach: true

Workflow

1. Set Up

library(framework)
scaffold()

2. Edit Presentation

Work directly in presentation.qmd:

---
title: "Q4 Sales Analysis"
author: "Your Name"
format: revealjs
---

## Overview

Key findings from Q4 sales data.

## Revenue Growth

```{r}
sales_plot
```

3. Render

quarto render presentation.qmd

Or in R:

quarto::quarto_render("presentation.qmd")

Output Formats

Change the format in the YAML header:

Reveal.js Slides

format: revealjs

HTML Document

format: html

PDF Report

format: pdf

Word Document

format: docx

Best Practices

Keep It Focused

The presentation type is for single deliverables. For multi-document projects, use the standard Project type.

Use Functions

Even in minimal projects, extract reusable code by enabling the functions/ directory:

# functions/plots.R
create_revenue_chart <- function(data) {
  ggplot(data, aes(x = month, y = revenue)) +
    geom_col(fill = "steelblue") +
    theme_minimal()
}

Cache Computations

Speed up rendering:

# In presentation.qmd
summary_stats <- cache_remember("summary", {
  expensive_calculations()
})

When to Use

Good for:

  • Conference talks
  • Committee presentations
  • Executive summaries
  • One-time reports
  • Quick analyses

Consider Standard Project for:

  • Ongoing analyses
  • Multiple deliverables
  • Complex data pipelines
  • Collaborative work