• Une équipe d'experts du langage R pour tous vos besoins

    R experts, for all your R needs

Conception et déploiement d’applications Shiny

Application et dashboard à partir du framework Shiny

Installation d’infrastructure et serveur R

Rstudio serveur, Rconnect, Shinyproxy, Shiny server…

Optimisation de codes et scripts R

A la recherche de la performance et de la maintenabilité

Développements dans l’écosystème R

Création de package, mise en production d’algorithme, ...

Migration de code SAS vers R

Parce que SAS il y a mieux mais c’est moins cher.

Contributions open-source

Nos contributions pour la communauté R

"Des experts R à votre service"

Consultants logiciel R

Chez ThinkR nous sommes des passionnés de R. Une équipe de développeurs et consultants R avec un fort savoir faire aussi bien en développement R qu’en déploiement d’application ou en installation d’infrastructure R.

Faîtes nous confiance pour mener à bien vos projets nécessitant une parfaite maîtrise du langage R :

  • Création de package R
  • Mise en place des bonnes pratiques de développement
  • Optimisation de code
  • Application Shiny
  • Installation et configuration de Rstudio Connect
  • Rstudio serveur ou ShinyProxy avec Docker
  • Formations R avancées

2024-11-19 / Colin Fay

Vous attendiez des applications mobiles natives avec R ? L’attente est terminée.

webR et la nouvelle génération d’applications avec R Au cours des derniers mois, j’ai partagé comment webR transformera notre manière de créer des applications intégrant R. Si vous ne le savez pas encore, webR est une compilation de R en WebAssembly. En termes simples, cela permet à R de fonctionner dans des environnements JavaScript. Si vous êtes familier avec le ...

2024-10-16 / Yohann Mansiaux

Au-delà des fonctions : comment enrichir un package R avec des données

En tant que développeur de package, on prête une attention particulière à nos fonctions maisons, à leur documentation et à leurs tests unitaires. Pour rendre l’expérience utilisateur encore plus complète, il peut être utile d’y incorporer des données. On vous explique tout ici ! Si vous n’êtes pas familier de l’implémentation des tests unitaires, nous vous conseillons de lire notre ...

2024-10-04 / Murielle

Attentes, vérifiées ! Plongez dans l’univers des tests unitaires avec expect_*()

Les tests unitaires sont essentiels dans le développement d’un package R. Ils garantissent que vos fonctions fonctionnent comme prévu, tout en vous protégeant contre les régressions lorsque vous améliorez ou modifiez votre code. Grâce au package {testthat}, écrire et automatiser des tests en R devient simple et intuitif. Au cœur de cette démarche, les fonctions expect_*() jouent un rôle central ...

2024-09-03 / Yohann Mansiaux

Boostez votre application shiny avec des dataviz interactives : une plongée dans la librairie JavaScript Chart.js

Poursuivons notre exploration de l’intégration de code JavaScript au sein d’une application {shiny} ! Nous allons montrer comment sortir des graphiques classiques produits en R base ou avec {ggplot2} pour aller fouiller du côté des librairies JavaScript de production de dataviz interactives, en particulier de la librairie Chart.js. Si vous avez manqué notre premier article sur l’intégration de librairies JavaScript ...

2024-08-26 / Colin Fay

{golem} 0.5.0 est maintenant disponible

Image d’en-tête générée par ChatGPT Nous sommes ravis d’annoncer la sortie de {golem} version 0.5.0 ! Cette mise à jour est remplie de nouvelles fonctionnalités, d’améliorations et de corrections de bugs qui simplifieront votre processus de développement d’applications Shiny. Vous pouvez télécharger la dernière version depuis votre dépôt CRAN préféré, ou en exécutant la commande suivante dans R : pak::pak( « thinkr-open/[email protected] » ...

gtlabr hex logo inside a rectangle

2024-05-17 / Sébastien Rochette

gitlabr v2.1.0 – gitlab-ci avec ‘pak’ et fonctions pour gérer les groupes sur GitLab

Pas mal de nettoyage, des nouvelles fonctionnalités et des corrections de bugs pour cette nouvelle version de ‘gitlabr’. Vous y trouverez des templates de CI/CD tout neufs et des fonctions pour gérer les groupes GitLab depuis R.   Du gitlab-ci tout neuf avec ‘pak’, prêt à l’emploi Le template pour le check de packages R utilise {pak} pour la gestion ...

2024-04-29 / Yohann Mansiaux

Mettre un coup de polish dans son appli shiny en utilisant une librairie JavaScript : l’exemple de sweetalert2

Vous trouvez certains composants de {shiny} peu fonctionnels ou austères ? Vous cherchez à implémenter une fonctionnalité particulière dans votre appli mais celle-ci est absente de la boite à outils de {shiny} ? Jetez un oeil du côté du JavaScript !. Le JavaScript est un langage de programmation très populaire qui est souvent utilisé pour ajouter des fonctionnalités à des ...

2024-02-21 / Vincent Guyader

Optimisation des performances en R : un exemple avec l’utilisation de Mémoise

Contexte Que ce soit pendant les (formations) que je peux donner ou les (coaching) que je peux faire, il y a bien souvent un moment où je pars dans un long laïus sur la puissance et l’utilité du caching. De à quel point c’est génial, pas si compliqué que ça à mettre en place et super intéressant. La dernière fois ...

2024-02-16 / Swann Floc’hlay

Dompter son namespace avec un zest de suggests

On la connait tous, cette petite vague de fébrilité qui nous traverse quand on regarde tourner le check de son tout nouveau commit en se disant “Où ça pourrait bien bloquer ?”. Et soudain, les trois petits ticks salvateurs 0 errors ✔ | 0 warnings ✔ | 0 notes ✔ Allelhuia ! 🎉 On git commit le tout, on git ...

banner with sticker logo of fusen package

2023-12-12 / Sébastien Rochette

‘fusen’ v0.6.0 (beta) : un nouveau parseur Rmd/Qmd avec ‘lightparser’ à tester avant release

{fusen} s’appuie désormais sur {lightparser} pour détecter les différentes parties d’un fichier Rmd ou Qmd avant de gonfler votre fichier plat en tant que package R. Avant la sortie sur CRAN, j’ai besoin que vous testiez la version de développement et me signaliez les cas particuliers avec vos fichiers plats. Pas l’temps d’tout lire Veuillez essayer la version préliminaire de ...

2023-12-04 / Florence Mounier

{checkhelper} est sur le CRAN : pour ne plus avoir peur de lancer un check

Vous avez fait un super package dont vous êtes fier·e et vous souhaitez le partager avec la communauté R ? Peut-être même le soumettre au CRAN ? Avant celà, vous savez que quelques checks sont recommandés.. si si vous le savez ! mais devtools::check() vous renvoie 7 warnings, 12 notes et 200 lignes pas très claires alors… Alors vous êtes ...

fusen - Gotta inflate' em all

2023-07-21 / Yohann Mansiaux

fusen v0.5: « inflatez » les tous !

Finie l’amnésie pour {fusen} ! La v0.5 lui permet maintenant d’avoir de la “mémoire”, ce qui va notamment vous permettre de gonfler simultanément l’ensemble de vos fichiers plats. Cette dernière version de {fusen} vise à offrir une expérience de développement de packages toujours plus fluide, pour les utilisateurs débutants comme pour les vieux routiers de son utilisation. {fusen} continue sa ...

2023-06-05 / Vincent Guyader

Dompter le téléchargement de fichier dans shiny

Mais pourquoi downloadHandler me retourne un fichier vide maintenant!? Contexte avec downloadHandler Quand on commence a jouer avec {shiny} on arrive généralement à un moment ou il est nécessaire de proposer à l’utilisateur de récuperer un document généré par l’application. Ce document peut etre un rapport pdf, un png un jpg ou que ce ce soit d’autre. La fonction adaptée ...

2023-06-01 / Sébastien Rochette

{attachment} v0.4.0 : Des changements majeurs et un fichier de configuration pour une meilleure expérience

La nouvelle version de {attachment} stocke vos paramètres dans un fichier de configuration pour une utilisation plus facile pendant le développement de votre package : lancez att_amend_desc()de n’importe où, il réutilisera votre dernier jeu de paramètres. Ceci s’accompagne de quelques changements pour une meilleure expérience. Le but de {attachment} est d’aider à gérer les dépendances des paquets pendant leur développement. ...

2023-03-15 / Colin Fay

{golem} 0.4.0 est maintenant disponible

La nouvelle version de {golem} est disponible ! Lire l’article complet sur https://golemverse.org/post/golem-0.4.0-release-on-cran/ Quoi de neuf ? Moins de dépendances Lorsque nous avons publié la première version de {golem} sur le CRAN, nous avons décidé que toutes les applications basées sur {golem} devraient dépendre de {golem}. C’était un choix conscient, et nous l’avons fait parce que {golem} vient avec des ...

2022-10-04 / Sébastien Rochette

Developpment de package avec {fusen} & {attachment} : charger les fonctions du flat, gérer les qmd et auto-remplissage du champ Remotes

L’un des objectifs de nos packages open-source chez ThinkR est de faciliter nos flux de travail de développement. {attachment} et {fusen} sont développés et maintenus pour faciliter le développement et la maintenance des paquets. Inception… S’ils nous aident tous les jours, ils peuvent probablement vous aider aussi ! Dans cet article de blog, je vous présente les dernières modifications de ...