# Sinew Workflow

The suggested workflow for sinew is an extension of the alternative documentation workflow described in the R packages book by Hadley Wickham.

Initial Package Build

1. Create a _sinewconfig.yml file in package/project root folder. Set any persistent definitions such as author name and default fields to be generated for all functions.
2. Develop `R` script for the package using proper namespacing definitions, i.e. `package::function`, or use `sinew::pretty_namespace`. Focus only on the function and package logic.
3. Run `sinew::makeOxygen` (single file) or `sinew::makeOxyFile` (directory) to create skeletons. It is suggested to use the styler package beforehand to have ensure proper R script syntax conventions.
4. Fill in the relevant descriptions and examples. Run `sinew::make_import` to create the correct `Imports` in the `DESCRIPTION` file.
5. Build the Package

Package Maintenance

1. Update functions as needed
2. Run `sinew::moga` on updated functions
3. Fill in the relevant descriptions and examples.
4. If needed run `sinew::make_import` to create the correct Imports in the `DESCRIPTION` file.
5. Build the Package