An R package that extends knitr to provide flexible control over working directories and output paths when generating dynamic reports.
ezknitr is an R package that extends the knitr dynamic report generation system. It solves the common problem of knitr's rigid working directory assumptions by giving users full control over input/output paths and working directories. This makes it easier to work with complex project structures and reusable analysis templates.
R users who create dynamic reports with knitr or R Markdown and work with non-flat directory structures. Particularly useful for data scientists, researchers, and analysts who need to organize projects with separate data, analysis, and output directories.
Developers choose ezknitr because it eliminates the directory path headaches of native knitr while maintaining full compatibility. Its sensible defaults and flexible configuration options make report generation work naturally with real-world project organization.
Avoid the typical working directory pain when using 'knitr'
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Defaults to current working directory instead of input file location, eliminating path confusion when projects have separate data and analysis folders, as shown in the motivation example.
Allows specifying separate directories for output files and figures via out_dir and fig_dir arguments, supporting organized project structures like in the advanced use case.
Supports passing parameters via the params argument, enabling reusable templates for different datasets or scenarios, as illustrated with multiple dataset analysis.
Provides ezknit() and ezspin() as wrappers for knit() and spin(), making integration seamless for existing knitr workflows without major changes.
Adds another package on top of knitr, which might be unnecessary for users with simple needs or those who can rely on rmarkdown::render() for parameter handling.
As admitted in the README, rmarkdown::render() has native YAML parameter support, reducing the necessity of ezknitr's parameter system in some workflows.
Only extends knitr and doesn't address issues with other report tools, potentially locking users into knitr-specific setups without broader flexibility.