Designing a Course With Quarto
1 Introduction
This book is a practical, end-to-end guide for educators, instructional designers, and academic technologists who want to modernize how they develop, organize, and deliver course materials. It brings together version control, reproducible documents, Quarto publishing, and Blackboard Ultra integration into a unified workflow that is scalable, maintainable, and future-proof.
The goal of this book is not only to show you what tools to use, but also how these tools work together to form a complete course-production pipeline—one that enhances instructional quality while reducing long-term maintenance effort.
To achieve this, the book is organized into several core skill domains that build on one another.
1.1 Setting Up Git, GitHub, and a Version-Controlled Workspace
This book starts with Git because the cleanest course-building workflow is:
- create the GitHub repository
- clone it locally
- pull the latest remote state
- add the Quarto course structure inside the cloned folder
- commit and push each working milestone
This chapter teaches the fundamentals of version control and how to use GitHub as your central repository for course materials. You will learn how to:
- Create a GitHub account
- Configure Git identity and SSH keys
- Create a course repository
- Clone, branch, commit, push, and pull changes
- Use GitHub as a publishing platform and collaboration space
- Apply version control to Quarto documents, slides, notebooks, and assets
By the end of this chapter, users will understand how to maintain a clean, traceable version history for their course, and how to safely experiment and update materials without losing work.
1.2 Tool Setup Essentials
After the Git-first workflow is clear, you will learn how to properly set up the rest of the development environment. This chapter guides you through installing and configuring:
- Git, Git LFS, Github CLI, and GitHub
- VS Code, Antigravity, or Cursor as the primary IDE
- GitHub Copilot for inline code support and chat-based authoring help
- Quarto CLI
- Python 3.12
- virtual environments
- pip, setuptools, wheel
- pandas, numpy, openpyxl, and matplotlib
- R, RTools (Windows), and renv
- Pandoc and Graphviz
- Core VS Code / Antigravity extensions for Jupyter, Quarto, Python, and remote development
- OpenAI / ChatGPT-connected coding tools where available in VS Code and Antigravity
- Gemini connections and API workflows for automating course-production tasks
By the end of this section, you will have a fully functional authoring environment where Quarto, Git, and Blackboard workflows run reliably.
This chapter ensures every user starts with a stable, consistent toolset, preventing configuration issues later in the course.
1.4 Building a Quarto Website Structure from Scratch
Once GitHub is ready and the tools are installed, this chapter walks through creating a complete Quarto site inside a cloned course repository, including:
- Initializing Quarto inside an existing GitHub repository
- Creating navigation, pages, and assets
- Organizing modules, slides, assignments, and labs
- Using Reveal.js for presentations
- Embedding media, figures, and interactive elements
- Structuring a microsite that mirrors a course syllabus
By the end of this chapter, readers will have a fully functional course website that is clean, navigable, and professional.
1.5 Designing a Blackboard Ultra Course Structure
This chapter teaches how to translate your Quarto website into a Blackboard Ultra course shell. Users will learn how to:
- Create ultra-style learning modules
- Embed HTML content exported from Quarto
- Add learning materials, assignments, rubrics, and media
- Optimize Blackboard structure for student navigation
- Use Blackboard as the delivery layer on top of your Quarto-generated content
The result is a Blackboard course that mirrors your Quarto site, offering a consistent student experience across platforms.
1.6 Integrating Quarto Deliverables into Blackboard Ultra
This final integration chapter teaches how to:
- Export Quarto pages, slides, and content as HTML
- Insert HTML into Blackboard Ultra pages
- Embed external web content
- Manage updates through GitHub synchronization
- Maintain consistency between Blackboard and your Quarto repository
Users finish with a fully connected system: Quarto as the authoring engine, GitHub as the repository, and Blackboard Ultra as the delivery interface.
2 What You Will Achieve by the End of This Book
By progressing through the chapters, you will develop the ability to:
- Build, maintain, and publish an entire course website
- Use version control confidently and professionally
- Use Classroom 50 to distribute and review coding assignments
- Use GitHub Copilot and editor-based AI tools to speed up course preparation
- Write reproducible, portable instructional materials
- Integrate your website into a university LMS
- Maintain a clean, scalable course development workflow
This book aims to transform your approach to digital course design—making your materials more organized, more professional, and significantly easier to maintain across semesters.