Awesome R package development Awesome Track Awesome List

A curated list of awesome tools to assist R ๐Ÿ“ฆ development.

Note before:

Contributing

If you wish to suggest any additional tools, please make a PR request or raise an issue here.

Please note that the awesome-r-pkgtools project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.


โš ๏ธโš ๏ธ Note Before โš ๏ธโš ๏ธ

If you are not using the latest release of pandoc, please change only the README.Rmd document.


Swiss army knives ๐Ÿ› 

Tools useful across all stages of package development (some of these are meta-packages and their component packages are also included in respective sections for the sake of completeness).

Package skeletons ๐Ÿ’€

Naming things ๐Ÿงธ

Working with package components

Documentation ๐Ÿ“š

Manual

Math in manual

Vignettes

Website

Translation

Lifecycle

Badges and stickers

Presentation

Book

Documentation quality โœ’๏ธ

Package change tracking and versioning

Unit testing ๐Ÿงช

Code analysis ๐Ÿ—‚โฑ

General

Code coverage

Lint detection

Code complexity

Code similarity

Benchmarking and profiling

Lines of code

Formatting ๐Ÿงฝ

R code

Markdown documents

Dependencies โš–๏ธ

CRAN checks, submission, and status ๐Ÿ“ฌ

Usage ๐Ÿ™ˆ

CI/CD ๐Ÿ“Ÿ

CI/CD: continuous integration and either continuous delivery or continuous deployment

Security/Privacy ๐Ÿ‘ฎ

Build systems

Validation frameworks

Debugging ๐Ÿ”ญ

Input validation ๐Ÿ”ฌ

Package metadata ๐Ÿ–จ

Reverse dependency checks ๐Ÿ“กโšฐ๏ธ

Docker container ๐Ÿ›

Gratitude ๐Ÿ™๐Ÿ’Œ

To thank the contributors or maintainers of packages you rely on.

Integration with other languages ๐Ÿ”—

C++

Python

Rust

.NET Framework

JavaScript/HTML/CSS

Julia

Sundry ๐Ÿ—’