Skip to content

Latest commit

 

History

History
78 lines (62 loc) · 4.87 KB

readme.md

File metadata and controls

78 lines (62 loc) · 4.87 KB

ESLint Plugin Ninja

Version GitHub license

The ultimate ESLint plugin.

     // Make your code look like this!
         import 👈 from 'left-pad'
         import 🎭 from 'is-even'

               let  = '1'
            let 🔥 = +👈(++, )
       let 🌈 = 🔥++ + ++ + +🎭(++🔥)
            let 🌯 = 🌈 + 🔥 * 🖐️

// 12% of the people can't solve this! 😂
       console.log(👈(, 🌯, 🌈) + 1)

🚀 Install

npm i -D eslint-plugin-ninja
{
  "plugins": ["ninja"],
  "extends": ["plugin:ninja/recommended"],
  "rules": {
    "ninja/align": 2,
    "ninja/prefer-emoji": 1
  }
}

✅ Rules

🔧 Automatically fixable by the --fix CLI option.

Name Description 🔧
align enforce elegant text alignment 🔧
declare-keyword enforce variable names to include their type 🔧
justify enforce comments explaining code 🔧
justify2 enforce text to be justified 🔧
lottery require luck
monopoly disallow bad eslint configs 🔧
no disallow everything
no-avoidable-loop disallow useless for loops 🔧
no-ci disallow running on CI lol
no-no-plusplus enforce the unary operators ++ and -- 🔧
no-object disallow object literals, prefer Map 🔧
no-overtime disallow overwork
no-random disallow non-deterministic randomness 🔧
no-rush enforce a delay
no-ts disallow gymnastics needed to please the TS compiler 🔧
no-woof disallow woof! 🔧
no-xkcd disallow xkcd references 🔧
optimize-string-ternary disallow repetition when building strings with ternaries 🔧
prefer-emoji require variables and properties to be named using emojis 🔧
prefer-npm require from npm instead of using JS builtins 🔧
prefer-tab require word separators to be tabs, not spaces 🔧
quine enforce quine
yes enforce nothing

🔒 License

MIT © Azat S.