# freebase A ‘usethis’-esque Package for Base R Versions of ‘tidyverse’ Code ## Description The ‘tidyverse’ is awesome, but can take a bit to compile on systems where there are no pre-built binary packages. Methods are provided which use the facilities of the ‘usethis’ package to snap-in base versions of useful ‘tidyverse’ functions that are mostly equivalent (some are more complete than others). The base R counterpart functions will likely be slower than the ‘tidyverse’ equivalents but using them will decrease ‘Imports’ dependencies. Use deliberately and with caution. ## NOTE This package shares core concepts with [`noplyr`](https://github.com/yonicd/noplyr) (and the author of `noplyr` is a contributor to `freebase`). For valid, needed reasons, `noplyr` uses `rlang` which introduces a compilation dependency/requirement which `freebase` is trying to avoid. The goal of `freebase` is 100% base R implementation of core/most frequently used `tidyverse` components primarily for use by package authors who prefer `tidyverse` idioms and would like to use them in package development but do not want to introduce compilation and/or third-party dependencies. As noted *just above*, `freebase` should be used deliberately and with caution. ## What’s Inside The Tin The following functions are implemented: - `use_detect`: Use base R versions of `purrr` `detect` functions (these support `~{}` formula functions) - `use_infix_helpers`: Use infix-helpers - `use_isers`: Use “is\_” tester functions - `use_keepers`: Use base R versions of `purrr` `keep` functions (these support `~{}` formula functions) - `use_mappers`: Use base R versions of `purrr` `map` functions (these support `~{}` formula functions) along with `set_names()` - `use_safely`: Use base R versions of `purrr` `safely` functions - `use_tidylite()`: Use base R versions of core `tidyr` functions - `use_walkers`: Use base R versions of `purrr` `walk` functions (these support `~{}` formula functions) ## Installation ``` r devtools::install_git("git://gitlab.com/hrbrmstr/freebase") ``` ## Usage ``` r library(freebase) # current version packageVersion("freebase") ``` ## [1] '0.2.0'