Skip to content

A Plop action to lint files with ESLint and automatically format with Prettier.

License

Notifications You must be signed in to change notification settings

natterstefan/plop-action-eslint

Repository files navigation

plop-action-eslint

npm version GitHub license Node CI

A Plop action to lint files with ESLint and automatically format with Prettier.

Table of Contents

Installation

npm install plop-action-eslint --save-dev

# or with yarn
yarn add plop-action-eslint -D

Usage

Before you can use plop-action-eslint, you have to load it into the plop object by adding the folling to your plopfile.js:

// plopfile.js
module.exports = async plop => {
  await plop.load('plop-action-eslint')
}

Once loaded, you have access the following actions.

Actions

eslint

Lints and fixes (autofix is enabled) the file of the given path with your projects ESLint configuration.

{
  type: "eslint",
  path: "src/component/{{pascalCase name}}.js",
}

You can also pass an array of paths.

{
  type: "eslint",
  path: [
    "src/component/{{pascalCase name}}.js",
    "src/component/{{pascalCase name}}.test.js",
  ],
}

Prettier Support

In order to automatically format your code with Prettier as well, you have to use eslint-config-prettier and eslint-plugin-prettier in your ESLint configuration.

How to release

Manually trigger release

# generate a new tag
yarn lerna:version

# generate a new Changelog entry
npx lerna-changelog --from <tag> --to <tag>
# add the result manually to CHANGELOG.md and commit it
git add CHANGELOG.md
git commit -m "chore: prepared release"

# push the tags
git push --tags

# publish the new version
yarn lerna:publish

License

MIT

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Stefan Natter
Stefan Natter

💻
Vytenis
Vytenis

💻
Ivan Holovin
Ivan Holovin

💻
Oliver Lillie
Oliver Lillie

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

Credits

This plop action is based on the code that was shared in plop#80 by FDiskas.