@privy-io/eslint-config

Privy's common ESLint config.

Usage no npm install needed!

<script type="module">
  import privyIoEslintConfig from 'https://cdn.skypack.dev/@privy-io/eslint-config';
</script>

README

@privy-io/eslint-config

Privy's common ESLint config.

Usage

To use this config in a new package, first install ESLint and the config package:

npm install --save-dev eslint @privy-io/eslint-config

Then create .eslintrc.js with the following content:

module.exports = {
  extends: '@privy-io/eslint-config',
};

Finally, add your package to the list below for reference.

Development

Whenever you make changes to this config, you should bump the version and re-publish:

npm version patch
npm publish

Then update the packages which use this config:

pushd ../privy-js && npm update @privy-io/eslint-config && popd
pushd ../privy-node && npm update @privy-io/eslint-config && popd

Notes

To ensure that we always use the same versions of transitive config and plugin dependencies, this package uses npm-shrinkwrap.json to pin exact dependency versions when it itself is installed as a dependency. It is automatically updated whenever you npm install a package. (This replaces package-lock.json.)

@rushstack/eslint-patch is used to patch ESLint to load plugins relative to this config. (By default, ESLint loads plugins relative to the project root, which would require them to be installed as peerDependencies.)