Migration
v1.x to v2.x
CLI option changes
- Several changes to how remote configs are loaded via CLI:
- The
:template_keysyntax has been removed. You can still use-k template_keyto achieve the same result. - The
--github(-gh) flag has been replaced by a generic--git(-g) one, which handles any git URL. Providing a partial GitHub path will default to trying to find the project on GitHub, e.g.-g username/project - The
#template_filesyntax has been removed, you may use--configor-cto tell Simple Scaffold which file to look for inside the git project. There is a default file priority list which can find the file for you if it is in one of the supported filenames.
- The
verbosecan now take the namesdebug,info,warn,errorornone(case insensitive).--create-sub-folder(-s) has been renamed to--subdir(-s) in the CLI. The Node.js names have been changed as well.--sub-folder-name-helper(-sh) has been renamed to--subdir-helper(-sh). The Node.js names have been changed as well.- All boolean flags no longer take a value.
-qinstead of-q 1or-q true,-sinstead of-s 1,-winstead of-w 1, etc.
Behavior changes
- Data is no longer auto-populated with
Name(PascalCase) by default. You can just use the helper in your templates contents and file names, simply use{{ pascalCase name }}instead of{{ Name }}.Namewas arbitrary and it is confusing (is itTitle Case?PascalCase? only reading the docs can tell). Alternatively, you can inject the transformed name into yourdatamanually using a scaffold config file, by using the Node API or by appending the data to the CLI invocation.
v0.x to v1.x
In Simple Scaffold v1.0, the entire codebase was overhauled, yet usage remains mostly the same between versions. With these notable exceptions:
- Some of the argument names have changed
- Template syntax has been improved
- The command to run Scaffold has been simplified from
new SimpleScaffold(opts).run()toSimpleScaffold(opts), which now returns a promise that you can await to know when the process has been completed.
Argument changes
localshas been renamed todata. The appropriate command line args have been updated as well to--data|-d.- Additional options have been added to both CLI and Node interfaces. See Command Line Interface (CLI) usage and Node.js usage for more information.
Template syntax changes
Simple Scaffold still uses Handlebars.js to handle template content and file names. However, helpers have been added to remove the need for you to pre-process the template data on simple use-cases such as case type manipulation (converting to camel case, snake case, etc)
See the readme for the full information on how to use these helpers and which are available.