npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@ijsto/eslint-config

v5.0.12

Published

ESLint and Prettier setup

Downloads

2,513

Readme

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. 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.codeActionsOnSave": {
    "source.fixAll.eslint": true
  },
  // Disable default formatting (ESLint formatting will be used instead)
  "[javascript]": {
    "editor.formatOnSave": false
  },
  "[javascriptreact]": {
    "editor.formatOnSave": false
  },
}

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.

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"
}

Typescript

⚠️ Currently eslint v8 will break the TypeScript support.

Some-what relevant: https://github.com/eslint/eslint/issues/15149

If you would like to use this config with TypeScript, all you need to do is:

  1. Install TypeScript dependencies:
   yarn add --dev @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint prettier
  1. Add the following to .eslintrc file
{
  // ...other configs
  "parser": "@typescript-eslint/parser", // <-- Add this
  "plugins": ["@typescript-eslint", /* ...otherPlugins */], // <-- Add this
  "extends": [ // <-- `extends` is now an array and not an object
    "@ijsto", 
    "plugin:@typescript-eslint/eslint-recommended", // <-- Add this
    "plugin:@typescript-eslint/recommended" // <-- Add this
  ]
  // ...other configs
}

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.

Insert '..' eslint(prettier/prettier)

  • This eslint error can sometimes occur when you have clashing formatters. The easiest solution if to change the default formatter in your VS Code settings to ESLint (tutorial coming soon).

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