# RevGadgets

<a href="https://revbayes.github.io/tutorials/intro/revgadgets"><img src="https://raw.githubusercontent.com/revbayes/RevGadgets/master/inst/hex_sticker.png" height="200" align="right" /></a>

<!-- badges: start -->
![CRAN](https://www.r-pkg.org/badges/last-release/RevGadgets)
![downloads](https://cranlogs.r-pkg.org/badges/grand-total/RevGadgets)
[![R-CMD-check](https://github.com/revbayes/RevGadgets/workflows/R-CMD-check/badge.svg)](https://github.com/revbayes/RevGadgets/actions)
<a href="https://zenodo.org/badge/latestdoi/162725392"><img src="https://zenodo.org/badge/162725392.svg" alt="DOI"></a>



<!-- badges: end -->

Postprocessing gadgets for output generated by [RevBayes](http://www.revbayes.com)

Through user-friendly data pipelines, RevGadgets guides users through importing RevBayes output into R, processing the output, and producing figures or other summaries of the results. RevGadgets provide paired processing and plotting functions built around commonly implemented analyses, such as tree building and divergence-time estimation, diversification-rate estimation, ancestral-state reconstruction and biogeographic range reconstruction, and posterior predictive simulations.

### To install:

First, make sure that you have a recent version of [R](https://www.r-project.org) installed.
RevGadgets requires R version 4.0 or greater.

Then, install the devtools R-package:

```R
install.packages("devtools")
```

Install RevGadgets directly from GitHub:

```R
devtools::install_github("revbayes/RevGadgets")
```

### Note about magick dependency:

A few RevGadgets dependencies require magick, which may require
you to install the imagemagick software external to R.

On a mac, you can do this with homebrew on terminal:

```bash
brew install imagemagick
```
### Tutorial:

For an introduction to using RevGadgets, check out the [tutorial](https://revbayes.github.io/tutorials/intro/revgadgets) on the RevBayes website.

### Legacy:

Some old RevBayes tutorials reference a legacy version of RevGadgets. To reproduce those tutorials, or the results of papers published using the legacy version, you'll need to install the legacy version of RevGadgets. To use this code, install the package using devtools, specifying the legacy branch:

```R
devtools::install_github("revbayes/RevGadgets@legacy")
```

### Gists:

Here's a list of useful `R` scripts for working with `RevBayes`/`RevGadgets`, but separate from core `RevGadgets` functionality.
This is a growing list: please let us know if you want to contribute your own!

- [Reading stochastic maps for use with phytools](https://gist.github.com/cmt2/f8f875461ae993e35f51f2b41877913c)
- [Convert BioGeoBears output for plotting with RevGadgets](https://gist.github.com/cmt2/c2425575be47c1a574df02ebe4058d38)

### Contributing:

If you'd like to contribute to `RevGadgets`, please have a look at our [developer guide](https://github.com/revbayes/RevGadgets/blob/development/inst/developers_guide.md)! For minor changes to existing code, make changes to development. To develop new code or make more substantial changes, create a new feature branch from development and then submit a pull request to merge back with development when the code is ready. No changes should happen directly on the master branch. 
