Giter Site home page Giter Site logo

eslint-config's Introduction

ESLint and Prettier setup for VS Code

  • A set of awesome ESLint + Prettier configs.
  • Makes it easier to work with React, Next.js, Node apps.
  • This package is intended for use with VS Code, however, can be easily used with any text editors.

This package will automatically detect if you're using React, Next.js, Node (and other in near future), and apply appropriate linting rules. ๐Ÿ‘Œ๐Ÿผ

Installation

You may need to restart VSCode once installed.

First installation will take you only a couple of minute, every subsequent should not take more than a minute.

You can install the package 2.a) in repo of the project which will apply the linting only to the project and not other files on your computer or 2.b) on your computer which will apply the linting to all files with the included file extensions on your computer.

Below are the steps to install (click on the step to open the instructions).

1 ยท VS Code Setup

  1. Install ESLint extension
  2. Add below snippet to your User settings:

    First try (โŒ˜Cmd + , or Ctrl + ,) โ†’ type in settings.json file โ†’ click on Edit in settings.json. If that doesn't work the file is located in $/Code/User/settings.json

{
  // ...
  // Run formatter when you save code changes
  "editor.formatOnSave": true,
  // Disable default formatting (ESLint formatting will be used instead)
  "[javascript]": {
    "editor.formatOnSave": false
  },
  "[javascriptreact]": {
    "editor.formatOnSave": false
  },
  // Auto-fix issues with ESLint when you save code changes
  "editor.codeActionsOnSave": {
    "source.fixAll.eslint": true
  },
  // Prevent double-formatting and potential ESLint <> Prettier conflicts (ESLint formatting will be used instead)
  "prettier.disableLanguages": [
    "javascript",
      "javascriptreact",
      "typescript",
      "typescriptreact",
  ],
}


2.a ยท RECOMMENDED: Per Project Setup (Local setup)

Install

  1. Install @ijsto/eslint-config:

    this command will auto-detect if you are using yarn by default and prompt you to confirm before proceeding.

npx install-peerdeps --dev @ijsto/eslint-config
  1. Create an .eslintrc file in the root of your project's directory. Paste in the following:
{
  "extends": "@ijsto"
}
  1. You're done!

  2. ESLint will now run and format your code each time you save your file.


2.b ยท Computer-wide (Global setup)

If you would like to install the config computer-wide (globally) and not on each project, follow the below steps.

Install

  1. Install @ijsto/eslint-config:

    this command will auto-detect if you are using yarn by default and prompt you to confirm before proceeding.

npx install-peerdeps --global @ijsto/eslint-config
  1. Create a global .eslintrc file on your computer:
  • MacOS location: ~/.eslintrc
  • Windows location: C:\Users\you\.eslintrc

Paste in the follow to newly created .eslintrc:

{
  "extends": "@ijsto"
}


How to Uninstall


If something doesn't work or you should try manually deleting your node_modules folder. This usually helps resolving any issues with this config not working.

If you would like to uninstall this eslint-config, run the below commands:

Local uninstall (per project)

yarn remove eslint @ijsto/eslint-config

or global (computer-wise)

npm remove eslint @ijsto/eslint-config

Global uninstall

yarn global remove eslint @ijsto/eslint-config

or

npm remove --global eslint @ijsto/eslint-config

That's all.

Did this package help you? Give it a โ˜… and share with your friends! ๐Ÿ™‚

PRs, feature requests or suggestions are most welcome!

iJS.to

Troubleshooting

If you followed the steps, yet still cannot get ESLint to work, you can try deleting /node_modules and running yarn or npm i depending on which one you use.

Contributing ๐Ÿ’ช๐Ÿผ

Thank you for considering to contribute to this project.

We are working on improving the contributing guidelines, for now, here is current TODO list:

  • Handle workspaces (see TODO:s in index.js file)
  • Create CONTRIBUTING.md file with guidelines

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.