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

@edenspiekermann/eslint-config

Package Overview
Dependencies
Maintainers
4
Versions
13
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@edenspiekermann/eslint-config

A shareable eslint config for ESPI projects

  • 1.5.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
14
increased by600%
Maintainers
4
Weekly downloads
 
Created
Source

Edenspiekermann ESLINT Configuration

This repository contains the ESLINT configuration for projects at EdenSpiekermann.

Installation

$ npm i -D @edenspiekermann/eslint-config

Usage

Add some ESLint config to your package.json:

{
    "name": "my-javascript-project",
    "eslintConfig": {
        "extends": ["@edenspiekermann/eslint-config"]
    }
}

Or to .eslintrc.json:

{
    "extends": ["@edenspiekermann/eslint-config"]
}

Depending on how you automate your JS linting you may wish to add a lint task to the scripts block in your package.json If this is your preferred setup simply add the following task.

{
    "scripts": {
        "lint": "eslint --fix path/to/your/javascript/**/*.js"
    }
}

You can now use this task by running npm run lint.

Core rules

Using "extends": ["@edenspiekermann/eslint-config"] is a short hand for "extends": ["@edenspiekermann/eslint-config/rules/core"]. The core rules use extend the airbnb-base configuration. It contains all rulesets for a frameworkless / vanilla js validation. On top of that its possible to extend these rules with some more specific configurations (see the following).

Prettier rules

Add this configuration if you want to use eslint with prettier. For more details read the section Integrating with Prettier.

{
  "extends": [
    "@edenspiekermann/eslint-config",
    "@edenspiekermann/eslint-config/rules/prettier"
  ]
}

React

Use "@edenspiekermann/eslint-config/rules/react" and "@edenspiekermann/eslint-config/rules/react-proptypes" configurations if you want to use eslint with react. "@edenspiekermann/eslint-config/rules/react" is mostly a proxy configuration for airbnb configuration. It disables the proptype validation. If you want to re-enable them, you should also add the "@edenspiekermann/eslint-config/rules/react-proptypes" rules.

{
  "extends": [
    "@edenspiekermann/eslint-config",
    "@edenspiekermann/eslint-config/rules/react",
    "@edenspiekermann/eslint-config/rules/react-proptypes",
  ]
}

Jest

Enable "@edenspiekermann/eslint-config/rules/jest" when using jest in your project. It uses the jest/recommended and jest/style rules.

{
  "extends": [
    "@edenspiekermann/eslint-config",
    "@edenspiekermann/eslint-config/rules/jest"
  ]
}

Typescript

To add typescript support for eslint extend the configuration with "@edenspiekermann/eslint-config/rules/typescript". This enabled typescript validation for *.ts files. When using typescript with react, you can also add "@edenspiekermann/eslint-config/rules/typescript-react" which adds jsx support for *.tsx files.

Integrating with Prettier

The config here is actually simply a proxy for Airbnb, prettier and prettier react configurations with a few custom overrides built in. One way you can have this code formatted on save though is through an ESLint integration in your code editor. We use the ESLint plugin for VSCode and this is configured to run on save. The code is then formatted and any errors highlighted in the editor window.

Installing the ESLint extension in VSCode

  • In VSCode you can select View > Extensions or shift + cmd + x to view the extensions sidebar and search the marketplace for the extension. Install and restart VSCode.

  • Next, select ESLint in the list of extensions and you will see the options that must be configured to enable format on save.

  • select Code > preferences > settings or cmd + , to adjust the ESLint configuration settings listed in the extension's README to format your code on save.

For other editors the instructions are basically the same, install the linting tool, sublime-linter for sublime or linter-eslint for Atom for example, and configure your settings to run and format on save.

Contributing

When contributing to this repository, please first check the Github issue to see if this has already been raised or assigned. If not feel free to create an issue.

Pull Request Process

If you wish to submit a pull request please follow these simple steps:

  1. Please add some information in the Pull Request description about the proposed changes listing what files are changed and a few lines about why.
  2. Increase the version number in the package.json following the SemVer versioning scheme
  3. Following testing and approval from the ESPI development team we will merge the PR, create a release and publish it to NPM

Keywords

FAQs

Package last updated on 13 Oct 2021

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