Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

eslint-config-uphold

uphold47.7kMIT6.5.3

Uphold-flavored ESLint config

config, eslint, lint, shared

readme

eslint-config-uphold

Uphold-flavored ESLint config.

The rules defined here extend the eslint-recommended preset, as well as the overrides that allow the Prettier pretty-printer to reformat the code without conflicts.

Status

npm version

Installation

npm install eslint eslint-config-uphold prettier --save-dev

[!WARNING] Node.js minimum versions are v23.0.0, v22.12.0 and v20.19.0, as @stylistic/eslint-plugin-js depends on the require('esm') module from v4.0.0.

Usage

Create an eslint.config.js file with the following content:

const uphold = require('eslint-config-uphold');

module.exports = uphold;

If you'd like to extend the config, or change rules, you can do so like this:

const { defineConfig } = require('eslint/config');
const uphold = require('eslint-config-uphold');
const yourPlugin = require('your-eslint-plugin');

module.exports = defineConfig([
  {
    extends: [uphold],
    name: 'uphold-config',
    plugins: {
      'your-plugin': yourPlugin,
    },
    rules: {
      'your-plugin/rule-name': 'error'
    },
  }
]);

See Using a Shareable Config for more information.

Add a lint command to the scripts section of your package.json, like so:

{
  "scripts": {
    "lint": "eslint"
  }
}

and run the linter with:

npm run lint

To automatically fix all lint issues, use the --fix option:

npm run lint --fix

Upgrading ESLint

See the ESLint repo for ESLint's guidelines on semantic versioning.

A tilde range is set for the ESLint dependency to pick up any patch changes by default.

For any minor/major upgrades to ESLint it is recommended to update both eslint and eslint-config-uphold and keep them in parallel. This is down to the fact that no guarantee is made that minor upgrades do not cause conflicts or issues with existing or new rules. The downside here is a package update is required for any security or other bug fixes. The benefit however is the included rules are always guaranteed to be stable.

Release process

The release of a version is automated via the release GitHub workflow. Run it by clicking the "Run workflow" button.

License

MIT

changelog

Changelog

v6.5.2 (2025-06-04)

v6.5.1 (2025-05-22)

v6.5.0 (2025-05-12)

v6.4.1 (2025-04-02)

  • Add support for future Node.js versions #94 (risantos)

v6.4.0 (2025-03-28)

  • Migrate tests to the native test runner #92 (Americas)
  • Add support for abbreviations on jsdoc/require-description-complete-sentence #93 (kuphold)
  • Convert project to ESM #89 (risantos)

v6.3.1 (2025-03-25)

  • Update Node.js minimum version requirements #87 (risantos)

v6.3.0 (2025-03-25)

  • Remove eslint-plugin-rulesdir and update ESLint configuration #86 (risantos)
  • Update Config export format #84 (risantos)

v6.2.0 (2025-03-21)

  • Bump dependencies to fix vulnerabilities #83 (risantos)

v6.1.0 (2025-03-20)

v6.0.0 (2024-04-04)

5.0.1 (2023-09-19)

5.0.0 (2023-09-19)

4.1.0 (2022-09-28)

4.0.0 (2022-09-07)

3.4.0 (2022-08-30)

3.2.0 (2022-07-25)

3.1.0 (2022-06-12)

3.0.0 (2022-02-25)

  • Add sorting of require statements with autofix #53 (satazor)

2.3.0 (2022-02-21)

2.2.0 (2022-02-11)

2.1.0 (2022-02-03)

v2.0.0 (2021-01-29)

v1.0.1 (2019-10-11)

v1.0.0 (2019-07-25)

v0.2.0 (2018-07-16)

v0.1.1 (2018-03-20)

  • Allow computed properties in prefer destructuring #5 (nunofgs)

v0.1.0 (2017-12-26)

  • Add jasmine and jest to eslint environments #4 (nunofgs)

v0.0.1 (2017-09-07)