Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

eslint-plugin-shopify

Package Overview
Dependencies
Maintainers
3
Versions
122
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

eslint-plugin-shopify

Shopify’s ESLint rules and configs.

  • 11.0.0-beta.0
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
4K
increased by1.14%
Maintainers
3
Weekly downloads
 
Created
Source

eslint-plugin-shopify

NPM version

Shopify’s ESLint rules and configs.

Installation

You'll first need to install ESLint:

$ npm i eslint --save-dev

Next, install eslint-plugin-shopify:

$ npm install eslint-plugin-shopify --save-dev

Note: If you installed ESLint globally (using the -g flag) then you must also install eslint-plugin-shopify globally.

Usage

Shopify’s ESLint configs come bundled in this package. In order to use them, you simply extend the relevant configuration in your project’s .eslintrc. For example, the following will extend the ESNext (ES2015 and later) config:

{
  "extends": "plugin:shopify/esnext"
}

If using React, extend the React version of the configuration (which adds some React-specific rules to those in the ESNext config):

{
  "extends": "plugin:shopify/react"
}

If working on an ES5 project, extend the ES5 version of the configuration:

{
  "extends": "plugin:shopify/es5"
}

You can also add some "augmenting" configs on top of the "core" config by extending an array of linting configs. For example, this package provides a lodash linting config, which can be added to the ESNext config with the following configuration file:

{
  "extends": [
    "plugin:shopify/esnext",
    "plugin:shopify/lodash"
  ]
}

This plugin provides the following core configurations:

  • esnext: Use this for anything written with ES2015+ features.
  • react: Use this for React projects.
  • es5: Use this for legacy projects.

This plugin also provides the following tool-specific configurations, which can be used on top of the core configurations:

  • lodash: Use this for projects that use lodash.

Plugin-Provided Rules

This plugin provides the following custom rules, which are included as appropriate in all core linting configs:

  • require-flow: Requires (or disallows) @flow declarations be present at the top of each file.
  • binary-assignment-parens: Requires (or disallows) assignments of binary, boolean-producing expressions to be wrapped in parentheses.

Creating New Rules

The easiest way to add new rules is to use the ESLint Yeoman generator. Running yo eslint:rule from the root of this project should add the required main file, docs, and test for your new rules. Make sure that these are all filled out and consistent with the other rules before merging. All tests (including linting) can be run using npm test.

Keywords

FAQs

Package last updated on 14 Apr 2016

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc