Skip to content
This repository has been archived by the owner on Nov 19, 2019. It is now read-only.

ESLint shareable configuration for Xerox projects.

License

Notifications You must be signed in to change notification settings

xeroxinteractive/eslint-config

Repository files navigation

@xerox/eslint-config Archived: Moved to monorepo xeroxinteractive/config

ESLint shareable configuration for Xerox projects.

circleci status npm package license MIT commit style angular semantic-release Dependabot Status

Usage

  1. Install this config and eslint as a devDependency:
yarn add [email protected] @xerox/eslint-config --dev
# or
npm install [email protected] @xerox/eslint-config --save-dev
  1. Extend the base and any additional configs in your .eslintrc file (or just add an eslintConfig entry to your package.json):
{
  "extends": [
    "@xerox",
    "@xerox/eslint-config/typescript", // Optional
    "@xerox/eslint-config/react" // Optional
  ]
}

Configurations

xerox (base)

The base eslint configuration i.e. "extends": ["@xerox"] includes rules for Jest and Prettier, and some general preferences like linebreak-style.

xerox/typescript

The typescript eslint configuration i.e. "extends": ["@xerox/eslint-config/typescript"] includes various TypeScript related rules, as well as swapping the default parser in order for eslint to work with TypeScript. You should call eslint using --ext .js,.ts, add .jsx and/or .tsx if necessary. This also adds a JSDoc requirement for only TypeScript files, .js and test.{js,ts} files are excluded, this allows you to progressively convert from TS to JS without having to add JSdoc to all the old JS source. These JSDoc rules are setup to mimick TSDoc, eslint-plugin-tsdoc doesn't yet exist, so this is a workaround, try to follow the example set out here.

xerox/react

The react eslint configuration i.e. "extends": ["@xerox/eslint-config/react"] enables jsx and includes the react reccomended settings from eslint-plugin-react, this sub-config needs some fleshing out.


LICENSE | CHANGELOG | ISSUES