

-
Projects are mostly to organize your work and to deal with all that working directory confusion (you should never need to use setwd() in a project). The current solution for creating reproducible environments is renv , though it's more of a match for venv. Similar to requirements.txt is a DESCRIPTION file, while it's mostly for package metadata and dependencies, it works well and is used for other project as well. For an example you could check https://github.com/hadley/ggplot2-book and many other Bookdown & Quarto books.
-
CodeRabbit
CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
-
As for organising code within a project, as mentioned packages really don’t allow this beyond collation order. The best solution in this space is the ‘box’ package which implements a fully-featured module system for R. ‘box’ notably gets used by some folks to implement large-scale Shiny applications; if this is what you’re after, I would recommend the ‘rhino’ framework, which builds upon Siny and ‘box’.
-
As for organising code within a project, as mentioned packages really don’t allow this beyond collation order. The best solution in this space is the ‘box’ package which implements a fully-featured module system for R. ‘box’ notably gets used by some folks to implement large-scale Shiny applications; if this is what you’re after, I would recommend the ‘rhino’ framework, which builds upon Siny and ‘box’.
-
For CI/CD type of thing perhaps check https://github.com/r-lib/actions .