rspatialdata
r-lib/producethis: What the Package Does (One Line, Title Case)
Note the use of the /exec folder for different deployable workflows
Documenting functions
The basics of roxygen2 tags and how to use them for documenting functions.
Examples
@examples provides executable R code showing how to use the function in practice. This is a very important part of the documentation because many people look at the examples before reading anything. Example code must work without errors as it is run automatically as part of R CMD check.
For the purpose of illustration, it’s often useful to include code that causes an error. You can do this by wrapping the code in try() or using \dontrun{} to exclude from the executed example code.
For finer control, you can use @examplesIf:
#' @examplesIf interactive()
#' browseURL("https://roxygen2.r-lib.org")
Instead of including examples directly in the documentation, you can put them in separate files and use @example path/relative/to/package/root to insert them into the documentation.
All functions must have examples for initial CRAN submission.
UNCHARTED DATA: Interactive Tooltip Tables
How to include tables in your {ggiraph} tooltips.
UNCHARTED DATA: Introducing the {reactablefmtr} Package
An R package created to make the styling and customization of {reactable} tables easier.
Design Patterns in R
Build robust and maintainable software with object-oriented design patterns in R. Design patterns abstract and present in neat, well-defined components and interfaces the experience of many software designers and architects over many years of solving similar problems. These are solutions that have withstood the test of time with respect to re-usability, flexibility, and maintainability. R6P provides abstract base classes with examples for a few known design patterns. The patterns were selected by their applicability to analytic projects in R. Using these patterns in R projects have proven effective in dealing with the complexity that data-driven applications possess.
Welcome and Getting Started – Next Generation Shiny Apps with {bslib}
Welcome to the workshop and hello, bslib!
Fast JSON, NDJSON and GeoJSON Parser and Generator
A fast JSON parser, generator and validator which converts JSON, NDJSON (Newline Delimited JSON) and GeoJSON (Geographic JSON) data to/from R objects. The standard R data types are supported (e.g. logical, numeric, integer) with configurable handling of NULL and NA values. Data frames, atomic vectors and lists are all supported as data containers translated to/from JSON. GeoJSON data is read in as simple features objects. This implementation wraps the yyjson C library which is available from .
Getting started with shinytest2
Refactoring notes
I worked on a refactor of an R package at work the other day. Here’s some notes about that after doing the work. This IS NOT a best practices post - it’s just a collection of thoughts.
For context, the package is an API client.
It made sense to break the work for any given exported function into the following components, as applicable depending on the endpoint being handled (some endpoints needed just a few lines of code, so those funtions were left unchanged):
Opinionated Backend and Reusability Focused Considerations for Shiny
Purposefully simple helper functions, tools, and a framework for creating reusable applications fit for production in clinical systems.
Roxygen R6 Guide
mlr3: Machine Learning in R - next generation. Contribute to mlr-org/mlr3 development by creating an account on GitHub.
Wrapping APIs
httr2
R Development Guide
A guide to R development.
Have we got NEWS.md for you
When developing a package it is essential to track the changes you make to your code. This is especially vital if they are breaking changes which have implications for any code written that depends on your package, i.e. a major version bump. Although you can always look back at your version control history in git, it is also convenient to have documentation which summarises the changes. This is where the NEWS file comes in.
Optimal workflows for package vignettes - R-hub blog
Yet another post with a focus on package documentation! This time, we’ll cover vignettes a.k.a “long-form package documentation”, both basics around vignette building and infrastructure, and some tips for more maintainer- and user- friendliness.
What is a vignette? Where does it live? In this section we shall go over basics of package vignettes.
Vignette 101 In the “R packages” book by Hadley Wickham and Jenny Bryan, the vignettes chapter starts with “A vignette is a long-form guide to your package.
tidyverse/dtplyr: Data table backend for dplyr
Data table backend for dplyr. Contribute to tidyverse/dtplyr development by creating an account on GitHub.
Building a team of internal R packages | Emily Riederer
On the jobs-to-be-done and design principles for internal tools
Explore Your Data Interactively • ExPanDaR
Provides a shiny-based front end (the 'ExPanD' app) and a set of functions for exploratory data analysis. Run as a web-based app, 'ExPanD' enables users to assess the robustness of empirical evidence without providing them access to the underlying data. You can export a notebook containing the analysis of 'ExPanD' and/or use the functions of the package to support your exploratory data analysis workflow. Refer to the vignettes of the package for more information on how to use 'ExPanD' and/or the functions of this package.
jsugarelli/shinyfilter
Contribute to jsugarelli/shinyfilter development by creating an account on GitHub.
ropenscilabs/allcontributors: all-contributions as an R package
all-contributions as an R package. Contribute to ropenscilabs/allcontributors development by creating an account on GitHub.
CRAN - Package shinydlplot
Add a download button to a 'shiny' plot or 'plotly' that appears when the plot is hovered. A tooltip, styled to resemble 'plotly' buttons, is displayed on hover of the download button. The download button can be used to allow users to download the dataset used for a plot.
renkun-ken/rlist: A Toolbox for Non-Tabular Data Manipulation
A Toolbox for Non-Tabular Data Manipulation. Contribute to renkun-ken/rlist development by creating an account on GitHub.
HenrikBengtsson/doFuture: R package: doFuture - A Universal Foreach Parallel Adaptor using the Future API of the 'future' Package
:rocket: R package: doFuture - A Universal Foreach Parallel Adaptor using the Future API of the 'future' Package - HenrikBengtsson/doFuture
HenrikBengtsson/parallelly: R package: parallelly - Enhancing the 'parallel' Package
R package: parallelly - Enhancing the 'parallel' Package - HenrikBengtsson/parallelly
HenrikBengtsson/future: R package: future: Unified Parallel and Distributed Processing in R for Everyone
:rocket: R package: future: Unified Parallel and Distributed Processing in R for Everyone - HenrikBengtsson/future
yonicd/d3Tree: htmlwidget that binds d3js collapsible trees to R and Shiny to make an interactive search tool
htmlwidget that binds d3js collapsible trees to R and Shiny to make an interactive search tool - yonicd/d3Tree
Rdatatable/data.table: R's data.table package extends data.frame:
R's data.table package extends data.frame:. Contribute to Rdatatable/data.table development by creating an account on GitHub.
dbosak01/libr: An R package to create data libraries and data dictionaries.
An R package to create data libraries and data dictionaries. - dbosak01/libr
Install and Run Programs, Outside of R, Inside of R • rOpenSci: outsider
Install and run external command-line programs in R through use of Docker and online repositories.