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