testthat - Unit Testing for R
Software testing is important, but, in part because it is frustrating and boring, many of us avoid it. 'testthat' is a testing framework for R that is easy to learn and use, and integrates with your existing 'workflow'.
Last updated 13 days ago
unit-testingcpp
20.85 score 892 stars 452 dependents 68k scripts 444k downloadshttr - Tools for Working with URLs and HTTP
Useful tools for working with HTTP organised by HTTP verbs (GET(), POST(), etc). Configuration functions make it easy to control additional request components (authenticate(), add_headers() and so on).
Last updated 1 years ago
apicurlhttp
20.49 score 985 stars 4.2k dependents 26k scripts 958k downloadsrlang - Functions for Base Types and Core R and 'Tidyverse' Features
A toolbox for working with base types, core R features like the condition system, and core 'Tidyverse' features like tidy evaluation.
Last updated 6 days ago
20.47 score 511 stars 14k dependents 9.9k scripts 1.8M downloadsfs - Cross-Platform File System Operations Based on 'libuv'
A cross-platform interface to file system operations, built on top of the 'libuv' C library.
Last updated 30 days ago
filesystemlibuvcpp
20.34 score 369 stars 5.1k dependents 7.8k scripts 996k downloadsdevtools - Tools to Make Developing R Packages Easier
Collection of package development tools.
Last updated 3 months ago
package-creation
20.05 score 2.4k stars 143 dependents 50k scripts 730k downloadsscales - Scale Functions for Visualization
Graphical scales map data to aesthetics, and provide methods for automatically determining breaks and labels for axes and legends.
Last updated 1 months ago
ggplot2
20.02 score 410 stars 7.7k dependents 86k scripts 1.2M downloadshere - A Simpler Way to Find Your Files
Constructs paths to your project's files. Declare the relative path of a file within your project with 'i_am()'. Use the 'here()' function as a drop-in replacement for 'file.path()', it will always locate the files relative to your project root.
Last updated 5 hours ago
project
19.70 score 414 stars 577 dependents 94k scripts 401k downloadscli - Helpers for Developing Command Line Interfaces
A suite of tools to build attractive command line interfaces ('CLIs'), from semantic elements: headings, lists, alerts, paragraphs, etc. Supports custom themes via a 'CSS'-like language. It also contains a number of lower level 'CLI' elements: rules, boxes, trees, and 'Unicode' symbols with 'ASCII' alternatives. It support ANSI colors and text styles as well.
Last updated 26 days ago
cli
19.28 score 651 stars 14k dependents 1.2k scripts 1.8M downloadsvctrs - Vector Helpers
Defines new notions of prototype and size that are used to provide tools for consistent and well-founded type-coercion and size-recycling, and are in turn connected to ideas of type- and size-stability useful for analysing function interfaces.
Last updated 1 months ago
s3-vectors
19.12 score 290 stars 13k dependents 896 scripts 1.6M downloadsroxygen2 - In-Line Documentation for R
Generate your Rd documentation, 'NAMESPACE' file, and collation field using specially formatted comments. Writing documentation in-line with code makes it easier to keep your documentation up-to-date as your requirements change. 'roxygen2' is inspired by the 'Doxygen' system for C++.
Last updated 4 months ago
devtoolsdocumentation
18.84 score 594 stars 212 dependents 2.4k scripts 180k downloadsxml2 - Parse XML
Work with XML files using a simple, consistent interface. Built on top of the 'libxml2' C library.
Last updated 2 months ago
libxml2xml
18.47 score 220 stars 2.2k dependents 6.0k scripts 913k downloadspkgdown - Make Static HTML Documentation for a Package
Generate an attractive and useful website from a source package. 'pkgdown' converts your documentation, vignettes, 'README', and more to 'HTML' making it easy to share information about your package online.
Last updated 7 days ago
documentation-tool
18.42 score 722 stars 157 dependents 558 scripts 184k downloadstidyselect - Select from a Set of Strings
A backend for the selecting functions of the 'tidyverse'. It makes it easy to implement select-like functions in your own packages in a way that is consistent with other 'tidyverse' interfaces for selection.
Last updated 7 days ago
18.32 score 129 stars 8.0k dependents 2.0k scripts 1.2M downloadspillar - Coloured Formatting for Columns
Provides 'pillar' and 'colonnade' generics designed for formatting columns of data using the full range of colours provided by modern terminals.
Last updated 5 hours ago
colour
18.13 score 178 stars 11k dependents 216 scripts 1.2M downloadsgtable - Arrange 'Grobs' in Tables
Tools to make it easier to work with "tables" of 'grobs'. The 'gtable' package defines a 'gtable' grob class that specifies a grid along with a list of grobs and their placement in the grid. Further the package makes it easy to manipulate and combine 'gtable' objects so that complex compositions can be built up sequentially.
Last updated 1 months ago
18.12 score 90 stars 7.4k dependents 4.1k scripts 1.1M downloadswithr - Run Code 'With' Temporarily Modified Global State
A set of functions to run code 'with' safely and temporarily modified global state. Many of these functions were originally a part of the 'devtools' package, this provides a simple package with limited dependencies to provide access to these functions.
Last updated 1 months ago
18.03 score 176 stars 11k dependents 1.1k scripts 1.3M downloadscpp11 - A C++11 Interface for R's C Interface
Provides a header only, C++11 interface to R's C interface. Compared to other approaches 'cpp11' strives to be safe against long jumps from the C API as well as C++ exceptions, conform to normal R function semantics and supports interaction with 'ALTREP' vectors.
Last updated 5 days ago
cppcpp11
17.65 score 205 stars 8.4k dependents 107 scripts 1.1M downloadsusethis - Automate Package and Project Setup
Automate package and project setup tasks that are otherwise performed manually. This includes setting up unit testing, test coverage, continuous integration, Git, 'GitHub', licenses, 'Rcpp', 'RStudio' projects, and more.
Last updated 12 days ago
githubsetup
17.56 score 865 stars 328 dependents 5.2k scripts 190k downloadsR6 - Encapsulated Classes with Reference Semantics
Creates classes with reference semantics, similar to R's built-in reference classes. Compared to reference classes, R6 classes are simpler and lighter-weight, and they are not built on S4 classes so they do not require the methods package. These classes allow public and private members, and they support inheritance, even when the classes are defined in different packages.
Last updated 3 months ago
17.54 score 412 stars 13k dependents 1.4k scripts 1.2M downloadshttr2 - Perform HTTP Requests and Process the Responses
Tools for creating and modifying HTTP requests, then performing them and processing the results. 'httr2' is a modern re-imagining of 'httr' that uses a pipe-based interface and solves more of the problems that API wrapping packages face.
Last updated 12 days ago
http
17.41 score 237 stars 979 dependents 1.6k scripts 401k downloadsremotes - R Package Installation from Remote Repositories, Including 'GitHub'
Download and install R packages stored in 'GitHub', 'GitLab', 'Bitbucket', 'Bioconductor', or plain 'subversion' or 'git' repositories. This package provides the 'install_*' functions in 'devtools'. Indeed most of the code was copied over from 'devtools'.
Last updated 30 days ago
17.01 score 339 stars 246 dependents 4.8k scripts 475k downloadslintr - A 'Linter' for R Code
Checks adherence to a given style, syntax errors and possible semantic issues. Supports on the fly checking of R code edited with 'RStudio IDE', 'Emacs', 'Vim', 'Sublime Text', 'Atom' and 'Visual Studio Code'.
Last updated 4 hours ago
linter
16.78 score 1.2k stars 35 dependents 900 scripts 79k downloadsrprojroot - Finding Files in Project Subdirectories
Robust, reliable and flexible paths to files below a project root. The 'root' of a project is defined as a directory that matches a certain criterion, e.g., it contains a certain regular file.
Last updated 5 hours ago
16.68 score 149 stars 1.3k dependents 1.4k scripts 644k downloadscrayon - Colored Terminal Output
The crayon package is now superseded. Please use the 'cli' package for new projects. Colored terminal output on terminals that support 'ANSI' color and highlight codes. It also works in 'Emacs' 'ESS'. 'ANSI' color support is automatically detected. Colors and highlighting can be combined and nested. New styles can also be created easily. This package was inspired by the 'chalk' 'JavaScript' project.
Last updated 2 months ago
16.62 score 325 stars 5.9k dependents 1.5k scripts 1.0M downloadsstyler - Non-Invasive Pretty Printing of R Code
Pretty-prints R code without changing the user's formatting intent.
Last updated 3 hours ago
pretty-print
16.42 score 736 stars 60 dependents 992 scripts 72k downloadsevaluate - Parsing and Evaluation Tools that Provide More Details than the Default
Parsing and evaluation tools that make it easy to recreate the command line behaviour of R.
Last updated 1 months ago
evaluationparsingrepl
16.11 score 132 stars 4.3k dependents 182 scripts 1.1M downloadslater - Utilities for Scheduling Functions to Execute Later with Event Loops
Executes arbitrary R or C functions some time after the current time, after the R execution stack has emptied. The functions are scheduled in an event loop.
Last updated 11 days ago
cpp
15.93 score 141 stars 2.5k dependents 233 scripts 650k downloadsprogress - Terminal Progress Bars
Configurable Progress bars, they may include percentage, elapsed time, and/or the estimated completion time. They work in terminals, in 'Emacs' 'ESS', 'RStudio', 'Windows' 'Rgui' and the 'macOS' 'R.app'. The package also provides a 'C++' 'API', that works with or without 'Rcpp'.
Last updated 30 days ago
15.83 score 471 stars 2.9k dependents 1.9k scripts 818k downloadslifecycle - Manage the Life Cycle of your Package Functions
Manage the life cycle of your exported functions with shared conventions, documentation badges, and user-friendly deprecation warnings.
Last updated 1 years ago
15.80 score 95 stars 14k dependents 48 scripts 1.8M downloadssvglite - An 'SVG' Graphics Device
A graphics device for R that produces 'Scalable Vector Graphics'. 'svglite' is a fork of the older 'RSvgDevice' package.
Last updated 2 months ago
svg
15.79 score 180 stars 213 dependents 4.5k scripts 116k downloadsprofvis - Interactive Visualizations for Profiling R Code
Interactive visualizations for profiling R code.
Last updated 3 months ago
15.64 score 305 stars 146 dependents 1.2k scripts 184k downloadsmemoise - 'Memoisation' of Functions
Cache the results of a function so that when you call it again with the same arguments it returns the previously computed value.
Last updated 1 years ago
memoise
15.63 score 317 stars 5.2k dependents 740 scripts 971k downloadssystemfonts - System Native Font Finding
Provides system native access to the font catalogue. As font handling varies between systems it is difficult to correctly locate installed fonts across different operating systems. The 'systemfonts' package provides bindings to the native libraries on Windows, macOS and Linux for finding font files that can then be used further by e.g. graphic devices. The main use is intended to be from compiled code but 'systemfonts' also provides access from R.
Last updated 5 days ago
fontsfontconfigfreetypecpp
15.61 score 95 stars 938 dependents 500 scripts 838k downloadsgh - 'GitHub' 'API'
Minimal client to access the 'GitHub' 'API'.
Last updated 2 months ago
githubgithub-api
15.57 score 223 stars 390 dependents 472 scripts 339k downloadsprocessx - Execute and Control System Processes
Tools to run system processes in the background. It can check if a background process is running; wait on a background process to finish; get the exit status of finished processes; kill background processes. It can read the standard output and error of the processes, using non-blocking connections. 'processx' can poll a process for standard output or error, with a timeout. It can also poll several processes at once.
Last updated 4 months ago
15.50 score 234 stars 1.4k dependents 340 scripts 863k downloadsragg - Graphic Devices Based on AGG
Anti-Grain Geometry (AGG) is a high-quality and high-performance 2D drawing library. The 'ragg' package provides a set of graphic devices based on AGG to use as alternative to the raster devices provided through the 'grDevices' package.
Last updated 3 months ago
drawinggraphicsvector-graphics
15.37 score 173 stars 456 dependents 1.6k scripts 1.2M downloadscallr - Call R from R
It is sometimes useful to perform a computation in a separate R process, without affecting the current R process at all. This packages does exactly that.
Last updated 3 months ago
15.30 score 302 stars 1.2k dependents 302 scripts 819k downloadszip - Cross-Platform 'zip' Compression
Cross-Platform 'zip' Compression Library. A replacement for the 'zip' function, that does not require any additional external tools on any platform.
Last updated 19 days ago
15.27 score 83 stars 846 dependents 888 scripts 512k downloadscovr - Test Coverage for Packages
Track and report code coverage for your package and (optionally) upload the results to a coverage service like 'Codecov' <https://about.codecov.io> or 'Coveralls' <https://coveralls.io>. Code coverage is a measure of the amount of code being exercised by a set of tests. It is an indirect measure of test quality and completeness. This package is compatible with any testing methodology or framework and tracks coverage of both R code and compiled C/C++/FORTRAN code.
Last updated 17 days ago
codecovcoveragecoverage-reporttravis-ci
15.12 score 335 stars 11 dependents 2.3k scripts 138k downloadsisoband - Generate Isolines and Isobands from Regularly Spaced Elevation Grids
A fast C++ implementation to generate contour lines (isolines) and contour polygons (isobands) from regularly spaced grids containing elevation data.
Last updated 2 years ago
15.04 score 131 stars 7.3k dependents 72 scripts 1.1M downloadsbit - Classes and Methods for Fast Memory-Efficient Boolean Selections
Provided are classes for boolean and skewed boolean vectors, fast boolean methods, fast unique and non-unique integer sorting, fast set operations on sorted and unsorted sets of integers, and foundations for ff (range index, compression, chunked processing).
Last updated 1 months ago
14.94 score 12 stars 3.1k dependents 130 scripts 883k downloadsgargle - Utilities for Working with Google APIs
Provides utilities for working with Google APIs <https://developers.google.com/apis-explorer>. This includes functions and classes for handling common credential types and for preparing, executing, and processing HTTP requests.
Last updated 1 years ago
authenticationgoogle
14.90 score 113 stars 192 dependents 266 scripts 641k downloadsps - List, Query, Manipulate System Processes
List, query and manipulate all system processes, on 'Windows', 'Linux' and 'macOS'.
Last updated 1 months ago
14.90 score 78 stars 1.4k dependents 98 scripts 776k downloadsgert - Simple Git Client for R
Simple git client for R based on 'libgit2' <https://libgit2.org> with support for SSH and HTTPS remotes. All functions in 'gert' use basic R data types (such as vectors and data-frames) for their arguments and return values. User credentials are shared with command line 'git' through the git-credential store and ssh keys stored on disk or ssh-agent.
Last updated 1 months ago
libgit2
14.89 score 151 stars 361 dependents 155 scripts 202k downloadsgert - Simple Git Client for R
Simple git client for R based on 'libgit2' <https://libgit2.org> with support for SSH and HTTPS remotes. All functions in 'gert' use basic R data types (such as vectors and data-frames) for their arguments and return values. User credentials are shared with command line 'git' through the git-credential store and ssh keys stored on disk or ssh-agent.
Last updated 1 months ago
libgit2
14.89 score 151 stars 361 dependents 155 scripts 202k downloadsdesc - Manipulate DESCRIPTION Files
Tools to read, write, create, and manipulate DESCRIPTION files. It is intended for packages that create or manipulate other packages.
Last updated 3 months ago
14.64 score 122 stars 1.1k dependents 409 scripts 448k downloadsbit64 - A S3 Class for Vectors of 64bit Integers
Package 'bit64' provides serializable S3 atomic 64bit (signed) integers. These are useful for handling database keys and exact counting in +-2^63. WARNING: do not use them as replacement for 32bit integers, integer64 are not supported for subscripting by R-core and they have different semantics when combined with double, e.g. integer64 + double => integer64. Class integer64 can be used in vectors, matrices, arrays and data.frames. Methods are available for coercion from and to logicals, integers, doubles, characters and factors as well as many elementwise and summary functions. Many fast algorithmic operations such as 'match' and 'order' support inter- active data exploration and manipulation and optionally leverage caching.
Last updated 2 months ago
14.44 score 32 stars 3.1k dependents 1.4k scripts 902k downloadssessioninfo - R Session Information
Query and print information about the current R session. It is similar to 'utils::sessionInfo()', but includes more information about packages, and where they were installed from.
Last updated 2 months ago
14.43 score 76 stars 226 dependents 4.3k scripts 356k downloadsconflicted - An Alternative Conflict Resolution Strategy
R's default conflict management system gives the most recently loaded package precedence. This can make it hard to detect conflicts, particularly when they arise because a package update creates ambiguity that did not previously exist. 'conflicted' takes a different approach, making every conflict an error and forcing you to choose which function to use.
Last updated 10 months ago
conflicts
14.09 score 248 stars 141 dependents 6.0k scripts 566k downloadspkgload - Simulate Package Installation and Attach
Simulates the process of installing a package and then attaching it. This is a key part of the 'devtools' package as it allows you to rapidly iterate while developing a package.
Last updated 19 days ago
14.07 score 59 stars 567 dependents 91 scripts 443k downloadsgenerics - Common S3 Generics not Provided by Base R Methods Related to Model Fitting
In order to reduce potential package dependencies and conflicts, generics provides a number of commonly used S3 generics.
Last updated 1 years ago
13.99 score 61 stars 9.5k dependents 126 scripts 995k downloadswaldo - Find Differences Between R Objects
Compare complex R objects and reveal the key differences. Designed particularly for use in testing packages where being able to quickly isolate key differences makes understanding test failures much easier.
Last updated 1 months ago
difftesting
13.99 score 288 stars 473 dependents 141 scripts 481k downloadsrex - Friendly Regular Expressions
A friendly interface for the construction of regular expressions.
Last updated 9 months ago
13.97 score 334 stars 84 dependents 178 scripts 155k downloadsfastmap - Fast Data Structures
Fast implementation of data structures, including a key-value store, stack, and queue. Environments are commonly used as key-value stores in R, but every time a new key is used, it is added to R's global symbol table, causing a small amount of memory leakage. This can be problematic in cases where many different keys are used. Fastmap avoids this memory leak issue by implementing the map using data structures in C++.
Last updated 7 months ago
cpp
13.94 score 133 stars 5.4k dependents 83 scripts 1.1M downloadscachem - Cache R Objects with Automatic Pruning
Key-value stores with automatic pruning. Caches can limit either their total size or the age of the oldest object (or both), automatically pruning objects to maintain the constraints.
Last updated 7 months ago
13.92 score 59 stars 5.2k dependents 64 scripts 1.0M downloadspkgbuild - Find Tools Needed to Build R Packages
Provides functions used to build R packages. Locates compilers needed to build R packages on various platforms and ensures the PATH is configured appropriately so R can use them.
Last updated 1 months ago
13.89 score 66 stars 837 dependents 130 scripts 481k downloadsslider - Sliding Window Functions
Provides type-stable rolling window functions over any R data type. Cumulative and expanding windows are also supported. For more advanced usage, an index can be used as a secondary vector that defines how sliding windows are to be created.
Last updated 2 months ago
13.82 score 297 stars 91 dependents 792 scripts 77k downloadsclock - Date-Time Types and Tools
Provides a comprehensive library for date-time manipulations using a new family of orthogonal date-time classes (durations, time points, zoned-times, and calendars) that partition responsibilities so that the complexities of time zones are only considered when they are really needed. Capabilities include: date-time parsing, formatting, arithmetic, extraction and updating of components, and rounding.
Last updated 4 months ago
13.78 score 102 stars 383 dependents 272 scripts 156k downloadsprettyunits - Pretty, Human Readable Formatting of Quantities
Pretty, human readable formatting of quantities. Time intervals: '1337000' -> '15d 11h 23m 20s'. Vague time intervals: '2674000' -> 'about a month ago'. Bytes: '1337' -> '1.34 kB'. Rounding: '99' with 3 significant digits -> '99.0' p-values: '0.00001' -> '<0.0001'. Colors: '#FF0000' -> 'red'. Quantities: '1239437' -> '1.24 M'.
Last updated 4 months ago
13.75 score 133 stars 3.1k dependents 83 scripts 906k downloadscommonmark - High Performance CommonMark and Github Markdown Rendering in R
The CommonMark specification <https://github.github.com/gfm/> defines a rationalized version of markdown syntax. This package uses the 'cmark' reference implementation for converting markdown text into various formats including html, latex and groff man. In addition it exposes the markdown parse tree in xml format. Also includes opt-in support for GFM extensions including tables, autolinks, and strikethrough text.
Last updated 2 months ago
cmarkcmark-gfmgfmmarkdown
13.73 score 88 stars 2.1k dependents 92 scripts 601k downloadscommonmark - High Performance CommonMark and Github Markdown Rendering in R
The CommonMark specification <https://github.github.com/gfm/> defines a rationalized version of markdown syntax. This package uses the 'cmark' reference implementation for converting markdown text into various formats including html, latex and groff man. In addition it exposes the markdown parse tree in xml format. Also includes opt-in support for GFM extensions including tables, autolinks, and strikethrough text.
Last updated 2 months ago
cmarkcmark-gfmgfmmarkdown
13.73 score 88 stars 2.1k dependents 92 scripts 601k downloadstextshaping - Bindings to the 'HarfBuzz' and 'Fribidi' Libraries for Text Shaping
Provides access to the text shaping functionality in the 'HarfBuzz' library and the bidirectional algorithm in the 'Fribidi' library. 'textshaping' is a low-level utility package mainly for graphic devices that expands upon the font tool-set provided by the 'systemfonts' package.
Last updated 3 days ago
harfbuzzfreetypefribidicpp
13.60 score 19 stars 463 dependents 62 scripts 1.4M downloadsrappdirs - Application Directories: Determine Where to Save Data, Caches, and Logs
An easy way to determine which directories on the users computer you should use to save data, caches and logs. A port of Python's 'Appdirs' (<https://github.com/ActiveState/appdirs>) to R.
Last updated 7 months ago
appdir
13.50 score 84 stars 5.2k dependents 62 scripts 969k downloadsgitcreds - Query 'git' Credentials from 'R'
Query, set, delete credentials from the 'git' credential store. Manage 'GitHub' tokens and other 'git' credentials. This package is to be used by other packages that need to authenticate to 'GitHub' and/or other 'git' repositories.
Last updated 4 months ago
credentialscredentials-helpergitgithub
13.19 score 28 stars 392 dependents 301 scripts 314k downloadsbackports - Reimplementations of Functions Introduced Since R-3.0.0
Functions introduced or changed since R v3.0.0 are re-implemented in this package. The backports are conditionally exported in order to let R resolve the function name to either the implemented backport, or the respective base version, if available. Package developers can make use of new functions or arguments by selectively importing specific backports to support older installations.
Last updated 4 months ago
backports
13.14 score 66 stars 3.1k dependents 171 scripts 655k downloadspkgconfig - Private Configuration for 'R' Packages
Set configuration options on a per-package basis. Options set by a given package only apply to that package, other packages are unaffected.
Last updated 1 years ago
13.01 score 41 stars 12k dependents 22 scripts 1.1M downloadszeallot - Multiple, Unpacking, and Destructuring Assignment
Provides a %<-% operator to perform multiple, unpacking, and destructuring assignment in R. The operator unpacks the right-hand side of an assignment into multiple values and assigns these values to variables on the left-hand side of the assignment.
Last updated 5 years ago
destructuring-assignmentmultiple-assignmentpattern-matchingunpacking-assignment
12.97 score 259 stars 111 dependents 2.0k scripts 37k downloadsaskpass - Password Entry Utilities for R, Git, and SSH
Cross-platform utilities for prompting the user for credentials or a passphrase, for example to authenticate with a server or read a protected key. Includes native programs for MacOS and Windows, hence no 'tcltk' is required. Password entry can be invoked in two different ways: directly from R via the askpass() function, or indirectly as password-entry back-end for 'ssh-agent' or 'git-credential' via the SSH_ASKPASS and GIT_ASKPASS environment variables. Thereby the user can be prompted for credentials or a passphrase if needed when R calls out to git or ssh.
Last updated 2 months ago
12.94 score 83 stars 4.9k dependents 77 scripts 925k downloadskeyring - Access the System Credential Store from R
Platform independent 'API' to access the operating system's credential store. Currently supports: 'Keychain' on 'macOS', Credential Store on 'Windows', the Secret Service 'API' on 'Linux', and simple, platform independent stores implemented with environment variables or encrypted files. Additional storage back-ends can be added easily.
Last updated 2 months ago
keyringsecuritylibsecretglib
12.89 score 196 stars 53 dependents 1.1k scripts 59k downloadspak - Another Approach to Package Installation
The goal of 'pak' is to make package installation faster and more reliable. In particular, it performs all HTTP operations in parallel, so metadata resolution and package downloads are fast. Metadata and package files are cached on the local disk as well. 'pak' has a dependency solver, so it finds version conflicts before performing the installation. This version of 'pak' supports CRAN, 'Bioconductor' and 'GitHub' packages as well.
Last updated 5 days ago
12.77 score 686 stars 16 dependents 210 scripts 19k downloadsdownlit - Syntax Highlighting and Automatic Linking
Syntax highlighting of R code, specifically designed for the needs of 'RMarkdown' packages like 'pkgdown', 'hugodown', and 'bookdown'. It includes linking of function calls to their documentation on the web, and automatic translation of ANSI escapes in output to the equivalent HTML.
Last updated 6 months ago
syntax-highlighting
12.67 score 90 stars 170 dependents 314 scripts 154k downloadssodium - A Modern and Easy-to-Use Crypto Library
Bindings to 'libsodium' <https://doc.libsodium.org/>: a modern, easy-to-use software library for encryption, decryption, signatures, password hashing and more. Sodium uses curve25519, a state-of-the-art Diffie-Hellman function by Daniel Bernstein, which has become very popular after it was discovered that the NSA had backdoored Dual EC DRBG.
Last updated 2 months ago
libsodium
12.63 score 70 stars 92 dependents 175 scripts 70k downloadssodium - A Modern and Easy-to-Use Crypto Library
Bindings to 'libsodium' <https://doc.libsodium.org/>: a modern, easy-to-use software library for encryption, decryption, signatures, password hashing and more. Sodium uses curve25519, a state-of-the-art Diffie-Hellman function by Daniel Bernstein, which has become very popular after it was discovered that the NSA had backdoored Dual EC DRBG.
Last updated 2 months ago
libsodium
12.63 score 70 stars 92 dependents 175 scripts 70k downloadscredentials - Tools for Managing SSH and Git Credentials
Setup and retrieve HTTPS and SSH credentials for use with 'git' and other services. For HTTPS remotes the package interfaces the 'git-credential' utility which 'git' uses to store HTTP usernames and passwords. For SSH remotes we provide convenient functions to find or generate appropriate SSH keys. The package both helps the user to setup a local git installation, and also provides a back-end for git/ssh client libraries to authenticate with existing user credentials.
Last updated 2 months ago
gitpasswordssh
12.45 score 72 stars 371 dependents 93 scripts 188k downloadsrcmdcheck - Run 'R CMD check' from 'R' and Capture Results
Run 'R CMD check' from 'R' and capture the results of the individual checks. Supports running checks in the background, timeouts, pretty printing and comparing check results.
Last updated 2 months ago
12.35 score 115 stars 153 dependents 100 scripts 175k downloadsbrio - Basic R Input Output
Functions to handle basic input output, these functions always read and write UTF-8 (8-bit Unicode Transformation Format) files and provide more explicit control over line endings.
Last updated 4 months ago
12.29 score 55 stars 510 dependents 40 scripts 414k downloadslobstr - Visualize R Data Structures with Trees
A set of tools for inspecting and understanding R data structures inspired by str(). Includes ast() for visualizing abstract syntax trees, ref() for showing shared references, cst() for showing call stack trees, and obj_size() for computing object sizes.
Last updated 1 years ago
cpp
12.11 score 303 stars 92 dependents 740 scripts 42k downloadsellipsis - Tools for Working with ...
The ellipsis is a powerful tool for extending functions. Unfortunately this power comes at a cost: misspelled arguments will be silently ignored. The ellipsis package provides a collection of functions to catch problems and alert the user.
Last updated 4 years ago
dot-dot-dotellipsis
11.85 score 141 stars 279 dependents 74 scripts 204k downloadsarchive - Multi-Format Archive and Compression Support
Bindings to 'libarchive' <http://www.libarchive.org> the Multi-format archive and compression library. Offers R connections and direct extraction for many archive formats including 'tar', 'ZIP', '7-zip', 'RAR', 'CAB' and compression formats including 'gzip', 'bzip2', 'compress', 'lzma' and 'xz'.
Last updated 1 months ago
compressionconnectionslibarchivecpp
11.67 score 145 stars 25 dependents 492 scripts 11k downloadsbench - High Precision Timing of R Expressions
Tools to accurately benchmark and analyze execution times for R expressions.
Last updated 2 years ago
11.32 score 246 stars 9 dependents 684 scripts 14k downloadscoro - 'Coroutines' for R
Provides 'coroutines' for R, a family of functions that can be suspended and resumed later on. This includes 'async' functions (which await) and generators (which yield). 'Async' functions are based on the concurrency framework of the 'promises' package. Generators are based on a dependency free iteration protocol defined in 'coro' and are compatible with iterators from the 'reticulate' package.
Last updated 1 months ago
asynccoroutinesgeneratoriteratorpromisesreticulate
11.29 score 160 stars 39 dependents 71 scripts 9.8k downloadsgmailr - Access the 'Gmail' 'RESTful' API
An interface to the 'Gmail' 'RESTful' API. Allows access to your 'Gmail' messages, threads, drafts and labels.
Last updated 1 years ago
11.20 score 229 stars 1 dependents 272 scripts 44k downloadsmockery - Mocking Library for R
The two main functionalities of this package are creating mock objects (functions) and selectively intercepting calls to a given function that originate in some other function. It can be used with any testing framework available for R. Mock objects can be injected with either this package's own stub() function or a similar with_mock() facility present in the 'testthat' package.
Last updated 1 years ago
11.19 score 99 stars 4 dependents 440 scripts 60k downloadsrematch2 - Tidy Output from Regular Expression Matching
Wrappers on 'regexpr' and 'gregexpr' to return the match results in tidy data frames.
Last updated 30 days ago
10.98 score 43 stars 178 dependents 33 scripts 502k downloadsjose - JavaScript Object Signing and Encryption
Read and write JSON Web Keys (JWK, rfc7517), generate and verify JSON Web Signatures (JWS, rfc7515) and encode/decode JSON Web Tokens (JWT, rfc7519) <https://datatracker.ietf.org/wg/jose/documents/>. These standards provide modern signing and encryption formats that are natively supported by browsers via the JavaScript WebCryptoAPI <https://www.w3.org/TR/WebCryptoAPI/#jose>, and used by services like OAuth 2.0, LetsEncrypt, and Github Apps.
Last updated 2 months ago
10.95 score 50 stars 36 dependents 60 scripts 46k downloadslog4r - A Fast and Lightweight Logging System for R, Based on 'log4j'
The log4r package is meant to provide a fast, lightweight, object-oriented approach to logging in R based on the widely-emulated 'log4j' system and etymology.
Last updated 2 months ago
logging
10.77 score 93 stars 15 dependents 188 scripts 5.0k downloadstzdb - Time Zone Database Information
Provides an up-to-date copy of the Internet Assigned Numbers Authority (IANA) Time Zone Database. It is updated periodically to reflect changes made by political bodies to time zone boundaries, UTC offsets, and daylight saving time rules. Additionally, this package provides a C++ interface for working with the 'date' library. 'date' provides comprehensive support for working with dates and date-times, which this package exposes to make it easier for other R packages to utilize. Headers are provided for calendar specific calculations, along with a limited interface for time zone manipulations.
Last updated 2 years ago
10.75 score 7 stars 2.3k dependents 28 scripts 837k downloadsvdiffr - Visual Regression Testing and Graphical Diffing
An extension to the 'testthat' package that makes it easy to add graphical unit tests. It provides a Shiny application to manage the test cases.
Last updated 1 months ago
ggplot2graphicstestthatlibpngcpp
10.72 score 189 stars 5 dependents 250 scripts 39k downloadspingr - Check if a Remote Computer is Up
Check if a remote computer is up. It can either just call the system ping command, or check a specified TCP port.
Last updated 1 months ago
dnsis-onlinepingtcpglibc
10.40 score 34 stars 23 dependents 130 scripts 119k downloadsfilelock - Portable File Locking
Place an exclusive or shared lock on a file. It uses 'LockFile' on Windows and 'fcntl' locks on Unix-like systems.
Last updated 4 months ago
10.06 score 43 stars 579 dependents 27 scripts 57k downloadsxopen - Open System Files, 'URLs', Anything
Cross platform solution to open files, directories or 'URLs' with their associated programs.
Last updated 30 days ago
10.01 score 31 stars 154 dependents 43 scripts 168k downloadsurlchecker - Run CRAN URL Checks from Older R Versions
Provide the URL checking tools available in R 4.1+ as a package for earlier versions of R. Also uses concurrent requests so can be much faster than the serial versions.
Last updated 4 months ago
10.00 score 47 stars 146 dependents 15 scripts 131k downloadsymlthis - Write 'YAML' for 'R Markdown', 'bookdown', 'blogdown', and More
Write 'YAML' front matter for R Markdown and related documents. Work with 'YAML' objects more naturally and write the resulting 'YAML' to your clipboard or to 'YAML' files related to your project.
Last updated 2 years ago
9.94 score 164 stars 14 dependents 209 scripts 857 downloadspkgdepends - Package Dependency Resolution and Downloads
Find recursive dependencies of 'R' packages from various sources. Solve the dependencies to obtain a consistent set of packages to install. Download packages, and install them. It supports packages on 'CRAN', 'Bioconductor' and other 'CRAN-like' repositories, 'GitHub', package 'URLs', and local package trees and files. It caches metadata and package files via the 'pkgcache' package, and performs all 'HTTP' requests, downloads, builds and installations in parallel. 'pkgdepends' is the workhorse of the 'pak' package.
Last updated 1 months ago
9.77 score 102 stars 5 dependents 67 scripts 5.2k downloadsxmlparsedata - Parse Data of 'R' Code as an 'XML' Tree
Convert the output of 'utils::getParseData()' to an 'XML' tree, that one can search via 'XPath', and easier to manipulate in general.
Last updated 30 days ago
xml
9.46 score 24 stars 37 dependents 25 scripts 71k downloadswhoami - Username, Full Name, Email Address, 'GitHub' Username of the Current User
Look up the username and full name of the current user, the current user's email address and 'GitHub' username, using various sources of system and configuration information.
Last updated 2 months ago
9.33 score 19 stars 38 dependents 46 scripts 48k downloadspkgcache - Cache 'CRAN'-Like Metadata and R Packages
Metadata and package cache for CRAN-like repositories. This is a utility package to be used by package management tools that want to take advantage of caching.
Last updated 1 months ago
8.76 score 28 stars 7 dependents 30 scripts 6.0k downloadsdebugme - Debug R Packages
Specify debug messages as special string constants, and control debugging of packages via environment variables.
Last updated 3 months ago
debugging-tool
8.26 score 149 stars 7 dependents 11 scripts 8.8k downloadssparsevctrs - Sparse Vectors for Use in Data Frames
Provides sparse vectors powered by ALTREP (Alternative Representations for R Objects) that behave like regular vectors, and can thus be used in data frames. Also provides tools to convert between sparse matrices and data frames with sparse columns and functions to interact with sparse vectors.
Last updated 13 days ago
8.20 score 13 stars 30 dependents 21 scripts 474 downloadsavailable - Check if the Title of a Package is Available, Appropriate and Interesting
Check if a given package name is available to use. It checks the name's validity. Checks if it is used on 'GitHub', 'CRAN' and 'Bioconductor'. Checks for unintended meanings by querying 'Wiktionary' and Wikipedia.
Last updated 3 months ago
unconfunconf17
8.20 score 144 stars 4 dependents 108 scripts 692 downloadsnanoparquet - Read and Write 'Parquet' Files
Self-sufficient reader and writer for flat 'Parquet' files. Can read most 'Parquet' data types. Can write many 'R' data types, including factors and temporal types. See docs for limitations.
Last updated 3 months ago
parquet
8.07 score 54 stars 3 dependents 42 scripts 2.9k downloadscarrier - Isolate Functions for Remote Execution
Sending functions to remote processes can be wasteful of resources because they carry their environments with them. With the carrier package, it is easy to create functions that are isolated from their environment. These isolated functions, also called crates, print at the console with their total size and can be easily tested locally before being sent to a remote.
Last updated 2 years ago
7.68 score 52 stars 3 dependents 189 scripts 11k downloadsclisymbols - Unicode Symbols at the R Prompt
A small subset of Unicode symbols, that are useful when building command line applications. They fall back to alternatives on terminals that do not support Unicode. Many symbols were taken from the 'figures' 'npm' package (see <https://github.com/sindresorhus/figures>).
Last updated 30 days ago
7.66 score 81 stars 22 dependents 32 scripts 5.4k downloadsmarquee - Markdown Parser and Renderer for R Graphics
Provides the mean to parse and render markdown text with grid along with facilities to define the styling of the text.
Last updated 6 days ago
cpp
7.64 score 85 stars 19 scripts 648 downloadstreesitter.r - 'R' Grammar for 'Tree-Sitter'
Provides bindings to an 'R' grammar for 'Tree-sitter', to be used alongside the 'treesitter' package. 'Tree-sitter' builds concrete syntax trees for source files of any language, and can efficiently update those syntax trees as the source file is edited.
Last updated 17 days ago
7.31 score 115 stars 1 dependents 11 scripts 614 downloadsprettycode - Pretty Print R Code in the Terminal
Replace the standard print method for functions with one that performs syntax highlighting, using ANSI colors, if the terminal supports them.
Last updated 2 months ago
7.16 score 101 stars 4 dependents 9 scripts 2.4k downloadsroxygen2md - 'Roxygen' to 'Markdown'
Converts elements of 'roxygen' documentation to 'markdown'.
Last updated 5 hours ago
documentationmarkdown
7.08 score 67 stars 2 dependents 11 scripts 253 downloadswebfakes - Fake Web Apps for HTTP Testing
Create a web app that makes it easier to test web clients without using the internet. It includes a web app framework with path matching, parameters and templates. Can parse various 'HTTP' request bodies. Can send 'JSON' data or files from the disk. Includes a web app that implements the 'httpbin.org' web service.
Last updated 30 days ago
7.07 score 63 stars 1 dependents 11 scripts 13k downloadssloop - Helpers for 'OOP' in R
A collection of helper functions designed to help you to better understand object oriented programming in R, particularly using 'S3'.
Last updated 2 months ago
r6s3s4
6.63 score 103 stars 273 scripts 525 downloadsasciicast - Create 'Ascii' Screen Casts from R Scripts
Record 'asciicast' screen casts from R scripts. Convert them to animated SVG images, to be used in 'README' files, or blog posts. Includes 'asciinema-player' as an 'HTML' widget, and an 'asciicast' 'knitr' engine, to embed 'ascii' screen casts in 'Rmarkdown' documents.
Last updated 2 months ago
6.61 score 226 stars 8 scripts 1.8k downloadsdecor - Retrieve Code Decorations
Retrieves code comment decorations for C++ languages of the form '\\ [[xyz]]', which are used for automated wrapping of C++ functions.
Last updated 1 years ago
cpp
6.17 score 3 stars 1 dependents 62 scripts 8.8k downloadsliteq - Lightweight Portable Message Queue Using 'SQLite'
Temporary and permanent message queues for R. Built on top of 'SQLite' databases. 'SQLite' provides locking, and makes it possible to detect crashed consumers. Crashed jobs can be automatically marked as "failed", or put in the queue again, potentially a limited number of times.
Last updated 30 days ago
5.89 score 57 stars 1 dependents 18 scripts 571 downloadsshowimage - Show an Image on an 'R' Graphics Device
Sometimes it is handy to be able to view an image file on an 'R' graphics device. This package just does that. Currently it supports 'PNG' files.
Last updated 30 days ago
5.60 score 8 stars 4 dependents 12 scripts 6.9k downloadsmeltr - Read Non-Rectangular Text Data
The goal of 'meltr' is to provide a fast and friendly way to read non-rectangular data, such as ragged forms of csv (comma-separated values), tsv (tab-separated values), and fwf (fixed-width format) files.
Last updated 11 months ago
cpp
5.55 score 30 stars 1 dependents 13 scripts 220 downloadscleancall - C Resource Cleanup via Exit Handlers
Wrapper of .Call() that runs exit handlers to clean up C resources. Helps managing C (non-R) resources while using the R API.
Last updated 30 days ago
5.53 score 19 stars 2 dependents 1 scripts 856 downloadsdiffviewer - HTML Widget to Show File Differences
A HTML widget that shows differences between files (text, images, and data frames).
Last updated 6 months ago
diffhtmlwidgets
5.44 score 58 stars 13 scripts 2.4k downloadscliapp - Create Rich Command Line Applications
Create rich command line applications, with colors, headings, lists, alerts, progress bars, etc. It uses CSS for custom themes. This package is now superseded by the 'cli' package. Please use 'cli' instead in new projects.
Last updated 8 months ago
5.29 score 62 stars 63 scripts 1.0k downloadsRapp - Easily Build Command Line Applications
Run simple 'R' scripts as command line applications, with automatic robust and convenient support for command line arguments. This package provides 'Rapp', an alternative 'R' front-end similar to 'Rscript', that enables this.
Last updated 3 months ago
5.08 score 48 stars 2 scripts 191 downloadscereal - Serialize 'vctrs' Objects to 'JSON'
The 'vctrs' package provides a concept of vector prototype that can be especially useful when deploying models and code. Serialize these object prototypes to 'JSON' so they can be used to check and coerce data in production systems, and deserialize 'JSON' back to the correct object prototypes.
Last updated 2 years ago
5.02 score 25 stars 2 dependents 4 scripts 1.4k downloadsghapps - Authenticate as a 'GitHub' App
'GitHub' apps provide a powerful way to manage fine grained programmatic access to specific 'git' repositories, without having to create dummy users, and which are safer than a personal access token for automated tasks. This package extends the 'gh' package to let you authenticate and interact with 'GitHub' <https://docs.github.com/en/rest/overview> in 'R' as an app.
Last updated 2 months ago
4.48 score 20 stars 1 scripts 239 downloadsdevoid - A Graphic Device that Does Nothing
Provides a non-drawing graphic device for benchmarking purpose. In order to properly benchmark graphic drawing code it is necessary to factor out the device implementation itself so that results are not related to the specific graphics device used during benchmarking. The 'devoid' package implements a graphic device that accepts all the required calls from R's graphic engine but performs no action. Apart from benchmarking it is unlikely that this device has any practical use.
Last updated 2 years ago
graphics
4.25 score 22 stars 16 scripts 184 downloadsoskeyring - Raw System Credential Store Access from R
Aims to support all features of the system credential store, including non-portable ones. Supports 'Keychain' on 'macOS', and 'Credential Manager' on 'Windows'. See the 'keyring' package if you need a portable 'API'.
Last updated 30 days ago
3.48 score 5 stars 7 scripts 1.2k downloads