Socket
Socket
Sign inDemoInstall

eslint-config-fluid

Package Overview
Dependencies
110
Maintainers
10
Versions
13
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    eslint-config-fluid

fluid-project eslint configuration


Version published
Weekly downloads
204
increased by124.18%
Maintainers
10
Install size
3.30 MB
Created
Weekly downloads
 

Readme

Source

eslint-config-fluid

fluid-project eslint configuration

Using

To use the eslint configuration provided by this module add it as a dev dependency

npm install eslint-config-fluid --save-dev

When using the default shareable configuration or the JSDoc only configuration, you'll also need to install eslint-plugin-jsdoc.

npm install eslint-plugin-jsdoc --save-dev

Next add an extends property to your eslint configuration.

{
    "extends": "eslint-config-fluid"
}

Alternatively, the "eslint-config-" prefix is assumed and can be ommited. See: Using a Shareable Config

{
    "extends": "fluid"
}

Using base configurations

The eslint-config-fluid sharable configuration is actually a combination of the base fluid eslint configuration and configuration for the eslint-plugin-jsdoc plugin. The latter handling validation of jsdoc syntax; which has been depracted from eslint. It is possible to use only one of these configurations.

Fluid Eslint Config only

To only use the Fluid setings for Eslint, add the following extends property to your eslint configuration.

{
    "extends": "fluid/fluid-config"
}
JSDoc Config only

To only use the JSDoc configuration for the eslint-plugin-jsdoc plugin, add the following extends property to your eslint configuration.

{
    "extends": "fluid/jsdoc-config"
}

Extend / Override Configuration

When using the eslint configuration provided by this module, you may have a case where you'd like to adjust or extend the configuration. To do this, add any additional configuration to your own .eslintrc.json file, which extends the one held in this project.

In the following example, we want to add a new global for the Infusion 2.0.0 versioned namespace to our project. The default configuration provided by the module defines a global for the generic "fluid" namespace, so we need to extend the configuration with an additional global, in this case "fluid_2_0_0".

{
    "extends": "eslint-config-fluid",
    "globals": {
        "fluid_2_0_0": true
    }
}

See the eslint user-guide for more configuration options.

Developing

See the eslint sharable configs documentation for full details.

Modifying Configuration

To modify the eslint rules provided by this module, update the configuration files:

  • .eslintrc-fluid.json: contains the base eslint rules
  • .eslintrc-jsdoc.json: contains the jsdoc validation rules
  • .eslintrc.json: The default configuration which combines .eslintrc-fluid.json and .eslintrc-jsdoc.json into a single config.

See the eslint user-guide for configuration options.

Testing

To test your changes locally, link the package globally on your system.

# run from the eslint-config-fluid directory.
# depending on your system, you may need to use sudo
npm link

Add your linked module to the package you want to test in.

# in the root directory for the package you want to test the configuration with
npm link eslint-config-fluid

Remove the links to clean up the test settings.

# run from the eslint-config-fluid directory.
# depending on your system, you may need to use sudo
npm unlink

# in the root directory for the package you tested the configuration with
npm unlink eslint-config-fluid

# run the install again to ensure that all the dependencies are properly installed
npm install

Keywords

FAQs

Last updated on 18 Oct 2022

Did you know?

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc