bookdown - Authoring Books and Technical Documents with R Markdown

  •        54

Full documentation at, and see "Get Started" at to know how to get started with writing a book. You are welcome to send us feedback using Github issues or ask questions on StackOverflow with the bookdown tag.



Related Projects

bookdown-demo - A minimal book example using bookdown

  •    CSS

This is a minimal example of a book based on R Markdown and bookdown ( Please see the page "Get Started" at for how to compile this example.

adv-r - Advanced R programming: a book

  •    TeX

This is code and text behind the Advanced R programming book. The site is built with bookdown.

mindr - an R package which converts markdown files (.md, .Rmd) into mindmaps (brainstorms)

  •    R

mindr is an R package which converts markdown (.md) or rmarkdown (.Rmd) files to mind maps (.mm), and vice versa. Mind map files (.mm) can be opened by or imported to common mindmap software such as the desktop software 'FreeMind'and 'XMind', or the online webware 'mindmeister'. then you will get a demo mind map file in the working directory (getwd()). Open it with any mind-map (brainstorm) software, and you will get a mind map.

rmdformats - HTML output formats for RMarkdown documents

  •    HTML

This R package provides ready-to-use HTML output formats and templates for RMarkdown documents. The goal is to produce clean documents "out of the box", with or without the RStudio IDE. The package provides several HTML output formats. You can click on an image to see a real HTML output sample.

data-science-at-the-command-line - Data Science at the Command Line

  •    HTML

This repository contains the full text, data, scripts, and custom command-line tools used in the book Data Science at the Command Line. The book is licensed under the Creative Commons Attribution-NoDerivatives 4.0 International License. The command-line tools are licensed under the BSD 2-Clause License.

kableExtra - Construct Complex Table with knitr::kable() + pipe

  •    R

However, the ultimate simplicity of kable() also brought troubles to some of us, especially for new R users, who may not have a lot of experience on generating tables in R. It is not rare to see people including experienced users asking questions like how to center/left-align a table on Stack Overflow. Also, for me personally, I found myself repeatedly parsing CSS into kable() for some very simple features like striped lines. For LaTeX, it's even worse since I'm almost Stack Overflow dependent for LaTeX... That's why this package kableExtra was created. This package can load required LaTeX package automatically in vanilla rmarkdown. For customized rmarkdown templates, it is recommended to load related LaTeX packages manually.

tidy-text-mining - Manuscript of the book "Tidy Text Mining with R" by Julia Silge and David Robinson

  •    TeX

This is a draft of the book Text Mining with R: A Tidy Approach, by Julia Silge and David Robinson. Please note that this work is being written under a Contributor Code of Conduct and released under a CC-BY-NC-SA license. By participating in this project (for example, by submitting a pull request with suggestions or edits) you agree to abide by its terms.

r4ds - R for data science

  •    R

This is code and text behind the R for Data Science book.

markdown-preview-enhanced - One of the 'BEST' markdown preview extensions for Atom editor!

  •    HTML

Markdown Preview Enhanced is an extension that provides you with many useful functionalities such as automatic scroll sync, math typesetting, mermaid, PlantUML, pandoc, PDF export, code chunk, presentation writer, etc. A lot of its ideas are inspired by Markdown Preview Plus and RStudio Markdown. Feel free to ask questions, post issues, submit pull request, and request new features.

Pandoc - Universal markup converter

  •    Haskell

Pandoc is a Haskell library for converting from one markup format to another, and a command-line tool that uses this library. Pandoc can read Markdown, CommonMark, PHP Markdown Extra, GitHub-Flavored Markdown, MultiMarkdown, and (subsets of) Textile, reStructuredText, HTML, LaTeX, MediaWiki markup, TWiki markup, TikiWiki markup, Creole 1.0, Haddock markup, OPML, Emacs Org mode, DocBook, JATS, Muse, txt2tags, Vimwiki, EPUB, ODT, and Word docx.

Pandoc - General Markup Converter

  •    Haskell

Pandoc is a Haskell library for converting from one markup format to another, and a command-line tool that uses this library. It an convert documents in markdown, reStructuredText, textile, HTML, DocBook, or LaTeX to HTML formats, Word processor formats, PDF and other markup formats.

xaringan - Presentation Ninja 幻灯忍者 · 写轮眼

  •    R

An R package for creating slideshows with remark.js through R Markdown. The package name xaringan comes from Sharingan, a dōjutsu in Naruto with two abilities: the "Eye of Insight" and the "Eye of Hypnotism". A presentation ninja should have these basic abilities, and I think remark.js may help you acquire these abilities, even if you are not a member of the Uchiha clan. If you use RStudio, it is easy to get started from the menu File -> New File -> R Markdown -> From Template -> Ninja Presentation, and you will see an R Markdown example. Press the Knit button to compile it, or use the RStudio Addin Infinite Moon Reader to live preview the slides (every time you update and save the Rmd document, the slides will be automatically reloaded; make sure the Rmd document is on focus when you click the addin). Please see the issue #2 if you do not see the template or addin in RStudio.

blogdown - Create Blogs and Websites with R Markdown

  •    R

You may create a new site via the function blogdown::new_site() under an empty directory. It will create a skeleton site, download a Hugo theme from Github, add some sample content, launch a web browser and you will see the new site. The sample blog post hello-world.Rmd should be opened automatically, and you can edit it. The website will be automatically rebuilt and the page will be refreshed after you save the file. If you use RStudio, you can create a new RStudio project for your website from the menu File -> New Project -> New Directory -> Website using blogdown.

reprex - Render bits of R code for sharing, e.g., on GitHub or StackOverflow.

  •    R

Prepare reprexes for posting to GitHub issues, StackOverflow, or Slack snippets. What is a reprex? It’s a reproducible example, as coined by Romain Francois. Result is returned invisibly, placed on the clipboard, and written to a file. Preview an HTML version in RStudio viewer or default browser.

Network-Programming-with-Go - Network programming with Go

  •    Makefile

This book is hosted on github-pages. Ebook can be downloaded as pdf, epub and mobi.

git - ProGit Book Fork generated using GitBook


This is a GitBook version of the Scott Chacon's book: Pro Git. The entire Pro Git book, written by Scott Chacon and published by Apress, is available here. All content is licensed under the Creative Commons Attribution Non Commercial Share Alike 3.0 license. Print versions of the book are available on

epublib - a java library for reading and writing epub files

  •    Java

Epublib is a java library for reading/writing/manipulating epub files. I consists of 2 parts: a core that reads/writes epub and a collection of tools. The tools contain an epub cleanup tool, a tool to create epubs from html files, a tool to create an epub from an uncompress html file. It also contains a swing-based epub viewer.

knitrBootstrap - A framework to create bootstrap styled HTML reports from knitr Rmarkdown.

  •    HTML

A framework to create bootstrap styled HTML reports from knitr Rmarkdown. All the examples include a css style switch, so you can try out the various styles from bootswatch.

gitbook - 📝 Modern documentation format and toolchain using Git and Markdown

  •    Javascript

GitBook is a command line tool (and Node.js library) for building beautiful books using GitHub/Git and Markdown (or AsciiDoc). Here is an example: Learn Javascript. You can publish and host books easily online using A desktop editor is also available.

calibre - The official source code repository for the calibre ebook manager

  •    Python

calibre is an e-book manager. It can view, convert, edit and catalog e-books in all of the major e-book formats. It can also talk to e-book reader devices. It can go out to the internet and fetch metadata for your books. It can download newspapers and convert them into e-books for convenient reading. It is cross platform, running on Linux, Windows and macOS. A tarball of the source code for the current calibre release.