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

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 eslint@5.12.1 @xerox/eslint-config --dev
# or
npm install eslint@5.12.1 @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