Utilities for creating npm initializers.
-
npm install @methodgrab/initializer-utils --save
- Import the utilities for creating your initializer CLI.
// cli.ts import { askFor, copyFiles } from '@methodgrab/initializer-utils'; // ...
- Import the utilities for testing your initializer CLI.
// cli.test.ts import { fileExists, runCLI } from '@methodgrab/initializer-utils/testing'; // ...
For a full example checkout the examples folder.
What this is:
- ✅ A simple, lightweight, collection of utilities for building new project initializers.
What this is not:
- ❌ A fully fledged generator/skaffolding tool.
There are plenty of great tools like Yeoman & Hygen that already do this.
These are utilities to help you create your initializer.
Use interactive prompts to gather information from a user.
These are validation helpers that can be used with the validate
property in askFor
prompts.
Copy a directory of templates, or a single template, to the CWD the user ran the initializer in.
Variables defined using curly braces ({{ foo }}
) will be replaced with the values in the supplied data
object.
When combined with askFor
this lets you easily include the users answers in the copied files.
These are utilities to help you test your initializer.
This runs your initializer (by default in a temp directory) with any prompt answers you specify.
This is a very basic utility to assert that a file in the output directory runCLI
ran in exists.