Common eslint config for Losant

Downloads in past


1.4.3a year ago5 years agoMinified + gzip package size for @losant/eslint-config-losant in KB


@Losant / Eslint Config Losant
ESLint config for all Losant projects.


npm install --save-dev @losant/eslint-config-losant
yarn add --dev @losant/eslint-config-losant


  • Node.js >=8.0.0


  "eslintConfig": {
    "extends": "@losant/eslint-config-losant/env/browser"

  "eslintConfig": {
    "extends": "@losant/eslint-config-losant/env/node"


You should add an npm script to the package.json of the project that specifies the eslint command. lint is the barebones setup you'll need to then be able to do yarn run lint. It's recommended that you add the other commands as well.
  "scripts": {
    "lint": "esw \"**/*.js\" src test",
    "lint:fix": "ews --fix \"**/*.js\" src test",
    "lint:watch": "esw --watch \"**/*.js\" src test",
    "lint:staged": "lint-staged"
  "lint-staged": {
    "**/*.js": "esw"


The resulting combination of extended rules, overrides, and plugins are documented together with their specified options:

Pre-Push Hook with Husky

Pre-Push hooks can be easily configured with Husky to encourage linting across a project. Simply add a dev dependency for Husky, and add configuration.
npm install --save-dev husky
yarn add --dev husky

"husky": {
  "hooks": {
    "pre-commit": "lint-staged"

Husky can be used for other Git Hooks as well. Check out their documentation for more details.

Optional Prettier Interop

If you others working in a shared repo have global local configurations for ESLint and/or Prettier, it may be desirable to configure ESlint & Prettier to operate without stepping on eachother's toes. This can be handled with some additional configuration.
npm install --save-dev eslint-config-prettier
yarn add --dev eslint-config-prettier

At the end of the project's list of ESLint configuration extends, add "prettier". This will tell ESLint not to worry about rules that Prettier deals with.
"extends": [

Configure to run after lint with lint-staged.
"lint-staged": {
  "**/*.js": "esw --fix",
  "*.{js,css,md}": "prettier --write"