bookdown
Authoring Books and Technical Documents with R Markdown
bookdown is an R package for authoring books and long-form technical documents using R Markdown. It converts R Markdown source files into multiple output formats including PDF, HTML, EPUB, and Word.
The package simplifies technical writing by providing easier markup than LaTeX while supporting advanced features like mathematical equations, theorems, and cross-references across all output formats. It enables authors to embed executable code in multiple languages (R, Python, C/C++, SQL), include interactive content like HTML widgets and Shiny apps, and publish directly to web platforms. The package integrates with RStudio IDE and supports one-click publishing to bookdown.org.
Contributors#
Resources featuring bookdown#
Quarto with the Quarto Team | An Open-Source Chat
Join Al Manning, Carlos SchIidegger, & Charles Teague, members of the Quarto Team, as they take our questions.
Quarto is an open-source tool for scientific and technical publishing. Create dynamic content with Python, R, Julia, and Observable. Author documents as plain text markdown or Jupyter notebooks. Publish high-quality articles, reports, presentations, websites, blogs, and books in HTML, PDF, MS Word, ePub, and more. Author with scientific markdown, including equations, citations, crossrefs, figure panels, callouts, advanced layout, and more.
Key Resources: ⬡ Learn more and get started with Quarto at quarto.org
Contact ⬡ Bug reports and feature requests - https://github.com/quarto-dev/quarto-cli/issues ⬡ Need help? Github discussions - https://github.com/quarto-dev/quarto-cli/discussions
Introduction Videos for Quarto ⬡ Mine and Julia talk, https://www.youtube.com/watch?v=p7Hxu4coDl8 ⬡ Quarto Series, 1️⃣ Welcome to Quarto Workshop led by Tom Mock: https://www.youtube.com/watch?v=yvi5uXQMvu4 2️⃣ Building a Blog with Quarto led by Isabella Velásquez: https://www.youtube.com/watch?v=CVcvXfRyfE0&feature=youtu.be 3️⃣ Beautiful reports and presentations with Quarto led by Tom Mock: https://www.youtube.com/watch?v=hbf7Ai3jnxY&feature=youtu.be
Timestamps
00:00:00 Introductions
2:55 Why open source?
6:20 Can we expect to see Quarto available to R-users via CRAN any time soon?
9:10 Quarto and Google Docs?
9:49 Lua filters/shortcodes. Advice for a good development environment for prototyping and debugging?
14:59 Is there a single documentation page for ALL the quarto-specific YAML options? https://quarto.org/docs/reference
16:15 Navigating Quarto’s documentation.
18:00 Is there something like Observable SQL cells on the roadmap?
20:10 Is there something closer to {bookdown} for Quarto? What is the best way to retain data and environment objects in a quarto book? Is there any path to enabling this? See Includes, https://quarto.org/docs/authoring/includes.html
24:20 Flexdashboard? Coming soon.
26:30 A big challenge in the adoption is that Quarto is competing with ipython notebooks for mindspace, what does the Quarto team think about that? Quarto and Jupyter Notebooks will hopefully be thought of as complementary to one another, with Quarto helping a lot with narrative, layout, and appearance for publication and sharing.
30:10 Where should I go to contact you about an issue? What if the issue isn’t just Quarto, say, Quarto + Jupyter?
31:50: What is the Quarto team hoping to see the community produce? Feedback, reporting in github issues. Quarto Extensions.
34:05 Custom styling, configuring grid options. Any tips or anything in the roadmap that will help users finetune the look and feel of their output?
38:40 Terminology question; what do we call a published Quarto doc? (or webpage, blog, etc.?)
40:00 How do I stay up to date with Quarto? Getting the latest release and learning about what is new?
See what’s up on quarto.org. Look under get-started and under downloads for pre-releases
Brad Lindblad | Professional Financial Reports with {rmarkdown} | Posit
GitHub: https://github.com/bradlindblad/pro_reports_talk
Abstract: With finance there will always be a need for reports, and as long as there’s a need for reports, there will be R users who want to create them as lazily as possible.
R Markdown lets us create incredibly customized and branded reports that can run automatically each month or day or whatever, and it all starts with the wonderful parameterizing features of R Markdown.
In this lightning talk, we will work through a practical example of creating an income statement for a group of theoretical office branches. You will learn how to make a parameterized R Markdown report, organize your R Markdown files and even create a custom cover letter, all in R.
Bio: Brad Lindblad is a data scientist located in Fargo, North Dakota. He is author of the tidyUSDA and schrute R packages, and specializes in geospatial data science and risk modeling. Brad is a frequent contributor to data science publications and loves creating new R users.
This is a meetup recording from December 2020. For more information on how to join meetups live: rstd.io/community-events
Links shared in the chat: Brad’s material/slides: https://github.com/bradlindblad/pro_reports_talk For anyone who’s new to R Markdown, this is a great reference guide and overview: https://bookdown.org/yihui/rmarkdown/ Pagedown package: https://github.com/rstudio/pagedown ETL example: https://solutions.rstudio.com/r/apps/twitter-etl/ More information on RStudio Connect: https://www.rstudio.com/products/connect/ To chat with RStudio about Connect: rstd.io/chat-with-rstudio
Carson Sievert || Customizing Navigation Items in Shiny using {bslib} || RStudio
00:00 Introduction 00:15 Linking inside navbarPage 01:19 Replacing tabPanel with navbarPage, and navbarMenu 02:32 nav_spacer() 03:41 Adding header and//or footer content 04:07 Replacing tabsetPanel with navs_tab and navs_pill 04:32 navs_tab_card() and navs_pill_card() variants 04:40 Demo of all of the nav_*() functions
The bslib R package provides tools for customizing Bootstrap themes directly from R, making it much easier to customize the appearance of Shiny apps & R Markdown documents. bslib’s primary goals are:
- To make custom theming as easy as possible.
- Custom themes may even be created interactively in real-time.
- Also provide easy access to pre-packaged Bootswatch themes.
- Make upgrading from Bootstrap 3 to 4 (and beyond) as seamless as possible. (Shiny and R Markdown default to Bootstrap 3 and will continue to do so to avoid breaking legacy code.)
- Serve as a general foundation for Shiny and R Markdown extension packages. (Extensions such as flexdashboard, pkgdown, and bookdown already fully support bslib’s custom theming capabilities.)
You can read more about bslib here: https://rstudio.github.io/bslib/articles/bslib.html And you can learn more about Shiny here: https://shiny.rstudio.com/
Got questions? The RStudio Community site is a great place to get assistance: https://community.rstudio.com/
Content: Carson Sievert (@cpsievert) Design & editing: Jesse Mostipak (@kierisi)

Yihui Xie | One R Markdown Document, Fourteen Demos | RStudio (2020)
R Markdown is a document format based on the R language and Markdown to intermingle computing with narratives in the same document. With this simple format, you can actually do a lot of things. For example, you can generate reports dynamically (no need to cut-and-paste any results because all results can be dynamically generated from R), write papers and books, create websites, and make presentations. In this talk, I’ll use a single R Markdown document to give demos of the R packages rmarkdown,
- bookdown for authoring books (https://bookdown.org ),
- blogdown for creating websites (https://github.com/rstudio/blogdown) ,
- rticles for writing journal papers (https://github.com/rstudio/rticles) ,
- xaringan for making slides (https://github.com/yihui/xaringan) ,
- flexdashboard for generating dashboards (https://github.com/rstudio/flexdashboard) ,
- learnr for tutorials (https://github.com/rstudio/learnr) ,
- rolldown for storytelling (https://github.com/yihui/rolldown) ,
And the integration between Shiny and R Markdown. To make the best use of your time during the presentation, I recommend you to take a look at the rmarkdown website in advance: https://rmarkdown.rstudio.com
Introduction to Bookdown (R Package) | RStudio Webinar - 2016
This is a recording of an RStudio webinar. You can subscribe to receive invitations to future webinars at https://www.rstudio.com/resources/web … . We try to host a couple each month with the goal of furthering the R community’s understanding of R and RStudio’s capabilities.
We are always interested in receiving feedback, so please don’t hesitate to comment or reach out with a personal message.
Read more on our blog: https://blog.rstudio.com/2016/12/02/announcing-bookdown/

