• R experts, for all your R needs

    R experts, for all your R needs

Shiny applications (design and deployment)

Application and dashboard using Shiny framework

R server and infrastructure

Rstudio server, Rconnect, Shinyproxy, Shiny server…

Code and R scripts optimization

Performance, Maintainability & Reusability

R Software Engineering

Package creation, algorithm production, ...

Remote trainings and certification

Learn R with us from the confort of your home/office!

Open-source contributions

Our open-source contributions to the R community

"R experts at your disposal"

A team of R consultants

At ThinkR we are passionate about R. We are a team of developers and R consultants, with solid knowledge and skills in everything R-related — development, application deployment, or infrastructure .

Contact us if you need a team of experts to carry out your R projects:

  • Package creation
  • Implementation of good development practices
  • Code optimization
  • Shiny application
  • Installation and configuration of Rstudio Connect
  • Rstudio server or ShinyProxy with Docker
  • Advanced R training

2021-11-14 / Sébastien Rochette

{attachment} v0.2.4: fill the Remotes field

A new version of {attachment} is available on CRAN. Get dependencies installed from GitHub, GitLab, … and add the link to the ‘Remotes’ field in the DESCRIPTION file of your package. install.packages(“attachment”) While waiting for CRAN release, you can install from GitHub: remotes::install_github(“ThinkR-open/[email protected]”) {attachment} helps you deal with dependencies during your package development. All packages used in your code needs ...

Moissonneuse batteuse en plein récolte avec un déplacement horizontal, ligne par ligne

2021-10-21 / Vincent Guyader

Row-wise operations with the {tidyverse}

We are often asked how to perform row-wise operations in a data.frame (or a tibble) the answer is, as usual, “it depends” 🙂 Let’s look at some cases that should fit your needs. library(tidyverse) Let’s make an example dataset: base <- tibble::tibble( a = 1:10, b = 1:10, c = 21:30 ) %>% head() base ## # A tibble: 6 ...

Engineering Production-Grade Shiny Apps

2021-10-11 / Vincent Guyader

The R series ‘Engineering Production-Grade Shiny Apps’ book is available in print!

It is with great pleasure that we can announce that the paper version of the book “Engineering Production-Grade Shiny Apps” is available. It is published in the R Series by Chapman & Hall. If you want to use shiny with rigour , and use this techno to push your applications into production, this book is for you. The ThinkR team ...

gtlabr hex logo inside a rectangle

2021-08-31 / Sébastien Rochette

{gitlabr} v2.0 is on CRAN!

You regularly create projects on GitLab with a common skeleton, you want to retrieve the list of GitLab issues to create a report, you are looking for batch modifications of your projects? Use the GitLab API from your preferred programming language R. Communicate with GitLab API from R Here is a small example as issued from the {gitlabr} Readme on ...

Pictures of multiple origamis boxes and animals

2021-08-05 / Sébastien Rochette

{fusen} is now available on CRAN!

With first version of {fusen} 0.2.4 now available on CRAN, you do not have any excuses not to try it in your daily workflows. install.packages(“fusen”) Add new documented and tested functionalities in an existing package If you already develop packages, {fusen} is for you. Developing a package requires to write some code and examples in multiple places: “R/”, “tests/”, “vignettes/”. ...

2021-05-31 / Colin Fay

About {golem} 0.3.1

The new version of {golem} (0.3.1) has been available on CRAN 🎉 for about a month now. This new version includes a lot of new things, but we notably focused on working on two important new features: allowing you to extend {golem} via templates, and supporting for the latest changes in {shiny}. Extending {golem} One of the challenges when it ...

Processus development collaborative

2021-04-19 / Sébastien Rochette

A guide to collaborative development with R for reproducible PROPRE reporting

With our “PROPRE” Project Guide, get a publishing committee and a development team to collaborate on creating your automated reports using the “PROPRE” methodology. Follow our suggestions for organization, tools and R development practices, for a controlled and benevolent DevOps practice. It is possible to collaborate around git in a team composed of developers and non developers. In this guide ...

2021-04-02 / Vincent Guyader

The top 10 R errors, the 7th one will surprise you

In the same way you fall learning to walk, you make mistakes learning R. The goal of this article was to regroup the most common mistakes one makes while learning R and to explain them in order for you you know how to fix them. Facing an issue, the most important advice would be : “Read the error message”. It ...

banner with sticker logo of fusen package

2021-01-26 / Sébastien Rochette

{fusen}: Create a package from a simple RMarkdown file

You know how to build a Rmardown, you were told or would like to put your work in a R package, but you think this is too much work? You do not understand where to put what and when? What if writing a Rmd was the same as writing a package? Follow the “Rmd-first” method and let {fusen} guide you ...

2021-01-19 / Sébastien Rochette

{attachment} v0.2.0 : find dependencies in your scripts and fill package DESCRIPTION

New version of {attachment} has been published on CRAN ! We continue to improve its functionalities to help you deal with dependencies in R, in particular during package development. Since our last blog post presenting the aim of {attachment}, two versions reached CRAN. The full documentation is available on the {pkgdown} website : https://thinkr-open.github.io/attachment. Still, for package developers, att_amend_desc() keeps ...