This project provides an R SDK for interacting with the Rodano API. It includes helper functions, communication utilities, and test scripts to facilitate integration with the Rodano platform. The SDK is managed using renv for reproducible environments and includes example usage and test cases to help developers get started quickly.
- Data Export: Pull and export data from the Rodano platform.
- Data Management: Write or remove data using the Rodano fine-grained rights API, ensuring secure and controlled access.
- Workflow Management: Manage and automate workflows within the Rodano environment.
The SDK provides secure authentication methods to connect to the Rodano platform. It supports user login, session management, and token-based authentication to ensure that only authorized users can access and modify data.
This project uses the lintr package to ensure code quality and style consistency. To run the linter, use:
lintr::lint_dir()You can customize linting rules in the .lintr file.
This project uses the styler package to automatically format and style R code according to the tidyverse style guide. styler ensures consistent code formatting across the entire codebase.
-
Style all R files in the project:
styler::style_dir()
-
Style a specific file:
styler::style_file("R/rodano_api_communication.R")
-
Style the active file in RStudio:
styler::style_active_file()
This project uses renv to manage R package dependencies and ensure reproducible environments across different machines and users.
renv creates isolated project-specific package libraries, preventing conflicts between projects and ensuring that everyone working on this project uses the same package versions.
-
Install packages - Use
install.packages()as usual.renvwill automatically track them. -
Take a snapshot - When you add or update packages, save the current state:
renv::snapshot()
This updates the
renv.lockfile with all dependencies and versions. -
Restore packages - To sync your library with the project's
renv.lockfile:renv::restore()
Run this when first cloning the project or after pulling changes.
-
Check status - See which packages have changed:
renv::status()
- After installing a new package: Run
renv::snapshot()to updaterenv.lock - After pulling changes: Run
renv::restore()to install any new dependencies - When switching machines: Run
renv::restore()to replicate the exact environment
For more information, visit the renv documentation.