Git Product home page Git Product logo

eslint-config-walmart's Introduction

eslint-config-walmart

A composable set of ESLint configurations.


This project is the maintained offshoot of eslint-config-defaults with just the Walmart Labs-flavored rules included. It is eslint@2+-compatible and actively maintained (with love) by the friendly folks at Walmart Labs.

Installation

Install this config package and ESLint:

$ npm install --save-dev eslint eslint-config-walmart

Usage

Full Configurations

This package includes the following complete and ready to use configurations:

  • walmart - ES6 config
  • walmart/configurations/off - Disable all rules (ESLint's default at 1.0.0+)
  • walmart/configurations/es5-browser - ES5 + browser
  • walmart/configurations/es5-node - ES5 + node < 4.x
  • walmart/configurations/es5-test - ES5 + test
  • walmart/configurations/es5 - ES5 config
  • walmart/configurations/es6-browser - ES6 + browser
  • walmart/configurations/es6-node - ES6 + node 4.x
  • walmart/configurations/es6-react-test - ES6 + react + test
  • walmart/configurations/es6-react - ES6 + react
  • walmart/configurations/es6-test - ES6 + test
  • walmart/configurations/es6 - ES6 config
Dependencies

To consume and extend a config in ESLint just add the extends attribute to your .eslintrc. For more details about how shareable configs work, see the ESLint documentation.

---
"extends":
  - "walmart"
---
"extends":
  - "walmart/configurations/es6-browser"

NOTE: Extending multiple complete configs can cause unexpected results, if you need to do this you should consider a piecemeal config as explained below. See walmartlabs/eslint-config-defaults#38 for details.

Piecemeal Configurations

ESLint configuration is broken apart in ./rules containing ESLint's rules and rules for specific ESLint plugins. The full set of ESLint rules (./rules/eslint) are broken into categories that mirror ESLint's documentation. Under each rule type there are sets of configuration as well as an off.js file which turns off every rule in the category.

Examples
---
"extends":
  - "walmart/rules/eslint/best-practices/on",
  - "walmart/rules/eslint/es6/off"
  - "walmart/rules/eslint/node/off"

"env":
  "phantom": true

Limitations

Due to an issue with ESLint, config extension cannot be called from a globally installed (npm install -g eslint) eslint. It can however be run properly using eslint installed directly to your package's node_modules. This can be done by either calling it directly (./node_modules/.bin/eslint .) or from within an npm script since they automatically check local node_modules first. This will be tracked in issue #43.

This package tracks config in the following versions:

And A Special Thanks To


License

MIT License

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.