Skip to content

crisfcodes/eslint-config-crisfcodes

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

eslint-config-crisfcodes

ESLint rules for all of my personal projects. Feel free to use these conventions :-)


Build Status version downloads MIT License All Contributors PRs Welcome Code of Conduct

Table of Contents

Installation

This module is distributed via npm which is bundled with node and should be installed as one of your project's devDependencies:

npm install --save-dev eslint-config-crisfcodes

This library has a required peerDependencies listing for eslint

Usage

Then add the extends to your .eslintrc.js:

module.exports = {
  extends: 'crisfcodes',
  rules: {
    // your overrides
  },
}

Other configs

This config also exposes a few other configs that I use often and pull in as needed.

You can use them standalone:

module.exports = {
  extends: 'crisfcodes/<config-name>',
}

Or in combination with the base config (recommended)

module.exports = {
  extends: ['crisfcodes', 'crisfcodes/<config-name>'],
}

Note: Due to this bug you need to have the associated plugins installed to make things work. I recommend adding them as dependencies to your project if you're going to use the config for it.

Things to know

  • The default config uses @babel/eslint-parser to support stage features that ESLint doesn't support and it opts to use the @babel/eslint-plugin rules over the ESLint rules to support rules for these features as well.
  • All plugins needed for rules used by these configs are dependencies of this module so you don't have to install anything on your own.
  • The default config actually is composed of several configurations and you can use those individually. These are the configs it's using: possible-errors.js, best-practices.js, stylistic.js, es6/index.js, and import/index.js. You can use each of these configs yourself if you want to leave my own personal style out of it. Also, the es6 and import configs each have a possible-errors.js, best-practices.js, and stylistic.js which they are composed of as well.

Example of highly customized config

module.exports = {
  extends: [
    'crisfcodes/possible-errors',
    'crisfcodes/best-practices',
    'crisfcodes/es6/possible-errors',
    'crisfcodes/import',
    'crisfcodes/jest',
  ],
  rules: {
    /* custom rules */
  },
}

Issues

Looking to contribute? Look for the Good First Issue label.

🐛 Bugs

Please file an issue for bugs, missing documentation, or unexpected behavior.

See Bugs

💡 Feature Requests

Please file an issue to suggest new features. Vote on feature requests by adding a 👍. This helps maintainers prioritize what to work on.

See Feature Requests

Contributors ✨

Thanks goes to these people (emoji key):


Kent C. Dodds

💻 📖 🚇

Jonathan Haines

💻

Zack Yang

💻

Mohamed Oun

💻

Alexander Nanberg

💻

Hu Chen

💻

Weyert de Boer

💻

Marko Vujanic

💻

Michaël De Boey

💻 📖 🔧

Justin Dorfman

📖

Nikolay Stoynov

📖

Andrew Mason

📖

Ben Monro

💻

Silviu Alexandru Avram

📖

This project follows the all-contributors specification. Contributions of any kind welcome!

LICENSE

MIT

About

ESLint configuration for projects that I do... Feel free to use this!

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 99.8%
  • Shell 0.2%