Quickstart
1. Run CLI
Change the directory to a place where you like to keep projects. Run @codemod-utils/cli to scaffold your codemod.
pnpx @codemod-utils/cli <your-codemod-name> [options]This will create a folder named your-codemod-name.
Add more utilities
By default, @codemod-utils/cli only installs the core packages: @codemod-utils/files and @codemod-utils/tests. Every codemod will need them.
If you need more, pass --addon and list the package names.
pnpx @codemod-utils/cli --addon blueprints package-jsonThe options for --addon are:
JavaScript only?
By default, @codemod-utils/cli creates a TypeScript project to help you maintain and extend the codemod.
To create a JavaScript project, set --typescript to false.
pnpx @codemod-utils/cli --typescript false2. Make the initial commit
Change to the codemod directory, then run these scripts in sequence:
# Install dependencies
pnpm install# Commit changes
git init
git add .
git commit -m "Initial commit"# Push changes (to a new repo)
git remote add origin git@github.com:<your-github-handle>/<your-repo-name>.git
git branch -M main
git push -u origin main3. Start coding
TIP
As you write code, you will want to lint and test files.
# Lint files
pnpm lint
pnpm lint:fix
# Test files
pnpm testTry running these scripts now. They should pass out of the box.
Not sure how to start? If this is your first time writing a codemod, we recommend going through the main tutorial. See existing codemods in Made with codemod-utils.