eslint-plugin-knex icon indicating copy to clipboard operation
eslint-plugin-knex copied to clipboard

Lint rule(s) for Knex.js

eslint-plugin-knex

npm version

Installation

npm install -D eslint-plugin-knex
yarn add -D eslint-plugin-knex

Usage

In your eslint config file:

{
  "plugins": ["knex"],
  "rules": {
    "knex/avoid-injections": "error"
  }
}

Settings

You can configure what names you intend to use for the knex client. Make sure to include the library itself (knex), but also transaction variables (trx, transaction).

{
  "settings": {
    "knex": {
      "builderName": "^(knex|transaction)$"
    }
  }
}

Rules

knex/avoid-injections

Avoid some issues related to SQL injection by disallowing plain strings as the query argument to the raw queries. Check out the tests to get a sense for what is valid and not.