froggeR 1.0.1
CRAN release: 2026-03-17
Enhancements
- The
pages/directory has been renamed toanalysis/, following the research compendium convention described in Marwick, Boettiger, and Mullen (2018).write_quarto()now writes toanalysis/instead ofpages/. Thanks to Raymond Balise (@RaymondBalise) for the suggestion and citation.
Bug fixes
init()no longer swallows directory creation errors. Iffs::dir_create()fails, the actual error is reported instead of a generic “Invalid path.”File writers (
write_variables(),write_brand(),write_quarto(), etc.) check whetherfile.copy()succeeded before reporting success. A failed copy raises an error instead of silent success.save_variables()andsave_brand()check whetherfile.copy()succeeded before reporting “Saved.” A failed copy raises an error instead of silent success.init()warns and skips individual template files that fail to copy instead of silently counting them as created.
froggeR 1.0.0 (2026-02-09)
CRAN release: 2026-02-09
Breaking changes
quarto_project()has been removed. It now errors with a message directing users toinit()instead.write_notes()andwrite_readme()have been removed. These files are now included in the project template downloaded byinit().write_ignore()no longer accepts anaggressiveparameter. A single.gitignoreis provided.settings()andbrand_settings()have been removed. Usewrite_variables()andwrite_brand()to create and edit configuration files directly. These functions now handle existing files gracefully (opening them for editing instead of erroring) and print reference URLs to the console.The
your-metadata-your-wayandbuilding-your-brand-identityvignettes have been removed.
New features
New function
init()is the primary entry point for creating froggeR projects. It downloads the latest project scaffold from the companion frogger-templates repository and retrieves saved user configuration (_variables.yml,_brand.yml,logos/) from~/.config/froggeR/. The target directory is created automatically if it does not exist. Existing files are never overwritten, and each created or skipped file is reported individually.write_scss()gains afilenameparameter (default"custom"). Awww/prefix and.scssextension are stripped automatically, sowrite_scss("tables")andwrite_scss("www/tables.scss")are equivalent.Template architecture: Project templates now live in a separate repository (
kyleGrealis/frogger-templates), decoupled from CRAN release cycles. Template improvements reach users immediately without a package update.
Internal
All template files previously bundled in
inst/gists/have been removed. All templates are now fetched from the companion repository at runtime.New internal helper
.fetch_template()downloads individual files from the template repository.New internal helper
.restore_saved_config()handles copying global user configuration into new projects duringinit().
froggeR 0.6.0 (2025-11-13)
CRAN release: 2025-11-14
New features
New function
brand_settings()for interactive branding configuration (name, colors, logos, typography). Saved to project-level, global, or both.New function
save_brand()for saving brand configuration to global settings.settings()redesigned with interactive metadata workflow, input validation, and project/global save options.write_brand()gainsrestore_logosargument.
Minor improvements
- Automatic one-time migration from
config.ymlto_variables.yml. - Four vignettes added covering project setup, branding, metadata, and global configuration.
- Switched vignette builder from Quarto to knitr for CRAN compatibility.
- Input validation for hex colors, ORCID, email, GitHub username, and URLs.
Internal
- Refactored
write_*functions: public API delegates to internalcreate_*workers. Standardized error handling withrlang::abort()and custom classes. - Expanded test suite across all exported and internal functions.
froggeR 0.5.0
CRAN release: 2025-07-08
BREAKING!!
-
write_quarto()argumentcustom_yamlhas been replaced withexample, defaulting to TRUE. The Quarto file templates have been reworked to use Quarto brand structure. This simplifies the YAML within the document, but may require changes to the project_quarto.ymland_brand.ymlfiles.
Enhancements
- 2 new Quarto brand YAML functions have been added:
write_brand()&save_brand(). These functions allow users to add project_brand.ymlfile and save the current_brand.ymlto where your machine stores configuration files. There are added arguments to save & restore your brand logos (saved aslogos/directory). - Modified SCSS template placeholders – some of these are now easier to manage in the
_brand.ymlfile. Added tweaks for ORCID logo issue when rendering with branding on Windows. - Revised Quarto template YAML – this seems to be a constant work in progress. Weighing the value of including defaults versus a more minimalistic approach.
- Removed creation of
.Rprojfile inquarto_project().
froggeR 0.4.0
CRAN release: 2025-03-16
Enhancements
- NEW:
save_variables()is a new function to store the current project-level_variables.ymlto the system configuration file path. It offers to overwrite if the system config exists. - Simplified Quarto templates by removing unnecessary commenting throughout the YAML.
- Added section for including multiple authors in Quarto YAML files.
- Simplified README in favor of a more lightweight template.
Bug Fixes
- Corrected indentation error for
affiliationsin the standard, non-custom Quarto template. Created rendering error.
Documentation
-
save_variables()documentation added to README
froggeR 0.3.0
CRAN release: 2025-01-15
Enhancements
- The
settings()function replacesfroggeR_settingsand provides a menu-driven interface. Users can now check, view, and get instructions to use Quarto metadata within and across projects. Learn how to apply user-specific metadata from the global config file, or store local project metadata for reuse on future froggeR Quarto projects. - The suite of
write_*functions open the created files for immediate viewing & editing (in interactive sessions). - Revised console feedback so users are always informed about how froggeR is helping streamline your project.
Documentation
- Fixed roxygen documentation for
@examplesby usingtempdir()when executing functions. - Used
@inheretParamsacross supplemental functions (README, notes, ignore, SCSS, variables).
Internal Changes
- Removed ability to change metadata from the console. Instructions are now provided and, for
write_variables(), the config file is opened in the interactive session. - Separated
write_readme; now includeswrite_notesfor a project-level progress notes template. - If any document to be created from the
write_*functions exists in the project, froggeR will now stop and provide a useful message instead of offering to overwrite from the console. This reduces annoying feedback & interaction and encourages the user to make deliberate decisions.
froggeR 0.2.2
Enhancements
-
quarto_project():- Streamlined integration with auxiliary functions for creating project-level files.
- Improved error handling and user feedback when creating Quarto projects.
- Ensured proper connection to
write_variables()for managing_variables.yml.
-
write_quarto():- Enhanced functionality to automatically call
write_variables()for_variables.ymlcreation. - Added clearer messaging for users when froggeR settings are missing, guiding them to set up metadata.
- Enhanced functionality to automatically call
-
write_variables():- Introduced as a new function to create and manage
_variables.ymlfiles in a modular way. - Handles automatic population of YAML metadata using froggeR settings.
- Introduced as a new function to create and manage
-
Improved User Feedback:
- Refined messaging across functions for consistency and clarity, including updated
ui_doneandui_infooutputs.
- Refined messaging across functions for consistency and clarity, including updated
Bug Fixes
- Resolved CRAN
check()errors related to undefined global variables in examples. - Fixed issues where
_variables.ymlcreation would fail under specific directory conditions.
Documentation
- Enhanced roxygen documentation for
write_quarto(),quarto_project(), andwrite_variables()with detailed examples and explanations. - Updated vignettes to demonstrate the modular design and improved workflows.
froggeR 0.2.1
Enhancements
- Improved
write_scss()function for more streamlined YAML updates in Quarto documents. - Enhanced user feedback in
froggeR_settings()function, providing clearer output of current settings. - Refined error handling and user guidance in various functions for a smoother user experience.
- Updated vignettes with more comprehensive examples and clearer explanations of froggeR workflows.
froggeR 0.2.0
- Renamed
defaultparameter tocustom_yamlinquarto_project()andwrite_quarto()for clarity. - Refactored
froggeR_settings()to use YAML for configuration storage. - Changed how settings are stored and retrieved. Settings are now stored in
~/.config/froggeR/config.yml. - Improved user interaction in
froggeR_settings()function. - Modified
quarto_project()andwrite_quarto()to use the new YAML-based settings. - Added
.check_settings()function to provide user feedback on incomplete settings. - Updated
.update_variables_yml()function to handle both creation and updating of_variables.yml. - Improved error handling and user feedback in various functions.
- Removed
load_data()function and related utilities. - Updated documentation and examples to reflect new functionality and improve clarity.
- Revised README for better explanation of package workflow and features.
- Updated pkgdown site structure to reflect current package organization.
froggeR 0.1.0
Major Features
- Implemented enhanced Quarto project creation with
quarto_project()- Automated project structure setup
- Custom YAML integration
- Built-in .gitignore configuration
- Project documentation templates
- Added interactive YAML configuration via
froggeR_settings()- Author information management
- Contact details setup
- Project metadata configuration
- TOC preferences
- Created document generation tools
-
write_quarto()for consistent document creation -
write_readme()for structured project documentation -
write_ignore()for enhanced Git security -
write_scss()for custom styling templates
-
Documentation
- Added comprehensive function documentation
- Included detailed examples for all main functions
- Created structured README with clear usage guidelines
- Added function reference table