0.3.0 • Published 8 years ago

eslint-engine v0.3.0

Weekly downloads
2
License
MIT
Repository
github
Last release
8 years ago

eslint-engine

Check JavaScript syntax using eslint conveniently in your project

eslint-engine is a streamlined way to use eslint in your project. Just type eslint-check and you're done.

npm.io

Status

Usage

Install it:

npm install -g eslint-engine

Then in your project, install eslint as a devDependency and create an .eslintrc. Or use one of these presets to help you out:

# pick one
eslint-install standard
eslint-install airbnb
eslint-install xo
eslint-install --help   # view all

Now run a check:

$ eslint-check

index.js:53:11: Expected indentation of 8 space characters but found 10. (indent)
index.js:57:39: Trailing spaces not allowed. (no-trailing-spaces)
index.js:59:48: There should be no space before ','. (comma-spacing)

Features

  • Convenient: eslint-engine checks all the JS files in your project while ignoring some common ignorables. It can also be ran as a global command, unlike eslint.

    # with eslint-engine
    eslint-check
    
    # with eslint
    ./node_modules/.bin/eslint '**/*.js' --ignore-pattern='node_modules'
  • Easy to install: presets for popular eslint configs can be installed easily.

    # with eslint-engine
    eslint-install standard
    
    # with eslint
    echo "{ extends: ['standard', 'standard-jsx'] }" > .eslintrc
    npm install --save eslint eslint-config-standard ... #snip
    ./node_modules/.bin/eslint ... #snip
  • Test runner integrations: eslint-engine can integrate with tape, ava, and mocha to provide you with fast linting as part of your test suite.

Config

eslint.ignore — You can add ignores via package.json.

/* package.json */
{
  "eslint": {
    "ignore": "lib/xyz"
  }
}

eslint.include — You can add additional files as well.

/* package.json */
{
  "eslint": {
    "include": "bin/*"
  }
}

Alternative usage

via Tape/Ava

Add this test file to your tape or ava suite:

test('eslint', require('eslint-engine/tape')())

via Mocha

Add this test file to your mocha suite:

describe('eslint', require('eslint-engine/mocha')())

via API

Access the programmatic API this way:

var eslint = require('eslint-engine')

eslint(options, (err, res) => {
  res.errorCount
  res.results.forEach(item => {
    item.filePath
    item.messages.forEach(msg => {
      msg.line
      msg.column
      msg.message
      msg.ruleId
    })
  })
})

Thanks

eslint-engine © 2016+, Rico Sta. Cruz. Released under the MIT License. Authored and maintained by Rico Sta. Cruz with help from contributors (list).

ricostacruz.com  ·  GitHub @rstacruz  ·  Twitter @rstacruz