peacock 0.2.0
New features
init_template()now accepts any GitHub repository as"owner/repo"or"owner/repo@ref"(branch, tag, or commit), in addition to the built-in names. Templates are defined in a data-file registry, and the download targets the repository’s default branch (HEAD) instead of a hardcodedmain.peacock_templates()lists the built-in templates. A custom registry (DCF or YAML) can be supplied via theregistryargument.init_analysis()scaffolds a reproducible analysis project (raw/processed data, analysis notebooks, reusable functions, and outputs).init_quarto()scaffolds a Quartowebsite,book, ormanuscript.init_python()emits a modern Python project (src layout,pyproject.tomlwith ruff and pytest). peacock stays an R package.Every project scaffold -
init_shiny(),init_analysis(),init_quarto(),init_python(), andtool_review_template()- now also writesAGENTS.mdandCLAUDE.mdso AI coding assistants are productive immediately.
Reliability
Added a
testthat(edition 3) test suite and a cross-platformR CMD checkGitHub Actions workflow (Ubuntu, Windows, macOS).Adopted the Air formatter, enforced in CI.
Bug fixes
init_template()validates its template argument and fails fast with a clear message for unknown names; the download is wrapped with error handling and always cleans up its temporary directory.tool_review_template()usesseq_along()(previously errored on an emptytool_name) and now populates new and emptysrc/scripts.The Shiny
DockerfileCMDuses valid quoting (previously backticks).Confirmation prompts are shown only in interactive sessions, so scripted use no longer silently cancels.
peacock 0.1.0
Initial release of peacock.
Features
init_shiny()- Initialize a complete Shiny application structure with organized folders for modules, UI components, data, and static assets. Includes Dockerfile for deployment.init_template()- Download and set up project templates from GitHub repositories. Currently supports “shiny” and “cgds” templates.init_changelog_md()- Create a CHANGELOG.md file with a simple format for tracking project progress and changes.tool_review_template()- Set up an organized structure for comparing multiple tools or methods, with dedicated folders for each tool’s data, scripts, and outputs.
Notes
All functions include a confirmation prompt by default. Set
confirm = FALSEto skip prompts in automated workflows.Templates create standard directory structures that can be modified after creation to fit specific needs.
Package includes built-in error handling and user-friendly messages for setup workflows.