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 🙏

© 2026 – Pkg Stats / Ryan Hefner

@arslivinski/eslint-config

v1.0.0-alpha.19

Published

Personal set of ESLint configurations

Readme

@arslivinski/eslint-config

A very opinionated ESLint configuration, mostly focused on web development.

Usage

This configuration requires ESLint >= 8.35.0

To install, run:

npm install -D eslint@^8.35.0 @arslivinski/eslint-config

Then create a .eslintrc.js:

'use strict';

module.exports = {
  extends: ['@arslivinski'],
};

Now you can run:

npm exec eslint -- ./

React

This configuration also provides a set of rules for React projects. To use it, you have to install these extra packages:

npm install -D eslint-plugin-react eslint-plugin-react-hooks

and extend this config on your .eslintrc.js

'use strict';

module.exports = {
  extends: ['@arslivinski/eslint-config', '@arslivinski/eslint-config/module', '@arslivinski/eslint-config/browser'],
  overrides: [
    {
      files: ['*.jsx'],
      extends: ['@arslivinski/eslint-config/react'],
    },
  ],
};

TypeScript

This configuration also provides a set of rules for TypeScript projects. To use you have to install these extra packages:

npm install -D typescript @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint-import-resolver-typescript

and extend this config on your .eslintrc.js

'use strict';

module.exports = {
  extends: ['@arslivinski/eslint-config'],
  overrides: [
    {
      files: ['*.ts'],
      parserOptions: {
        tsconfigRootDir: __dirname,
        project: ['./tsconfig.json'],
      },
      settings: {
        'import/resolver': {
          typescript: {
            project: './tsconfig.json',
          },
        },
      },
      extends: ['@arslivinski/eslint-config/module', '@arslivinski/eslint-config/typescript'],
    },
  ],
};

React and TypeScript

It's possible to mix them both. To use this way you have to install these extra packages:

npm install -D eslint-plugin-react eslint-plugin-react-hooks typescript @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint-import-resolver-typescript

and extend this config on your .eslintrc.js

'use strict';

module.exports = {
  extends: ['@arslivinski/eslint-config'],
  overrides: [
    {
      files: ['*.ts', '*.tsx'],
      parserOptions: {
        tsconfigRootDir: __dirname,
        project: ['./tsconfig.json'],
      },
      settings: {
        'import/resolver': {
          typescript: {
            project: './tsconfig.json',
          },
        },
      },
      extends: [
        '@arslivinski/eslint-config/typescript',
        '@arslivinski/eslint-config/module',
        '@arslivinski/eslint-config/browser',
      ],
    },
    {
      files: ['*.tsx'],
      extends: ['@arslivinski/eslint-config/react'],
    },
  ],
};

Node

You can use this configuration for pure Node applications. For this, you need to install the following extra package:

npm install -D eslint-plugin-n

Then, you need to set the Node version on the engine field of your package.json. Example:

{
  "name": "your-module",
  "version": "1.0.0",
  "engines": {
    "node": ">=18.14.0"
  }
}

and finally, extend this config on your .eslintrc.js. If you are using modules:

'use strict';

module.exports = {
  extends: ['@arslivinski/eslint-config', '@arslivinski/eslint-config/module', '@arslivinski/eslint-config/node'],
};

...or if you are using CommonJS:

'use strict';

module.exports = {
  extends: ['@arslivinski/eslint-config', '@arslivinski/eslint-config/commonjs', '@arslivinski/eslint-config/node'],
};

Modules

This package provide the following modules to be used

| Name | Import | Description | | :------------ | :----------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------ | | base | @arslivinski/eslint-config | The base configuration for all kinds of JavaScript and TypeScript | | module | @arslivinski/eslint-config/module | To be used when the files make use of ES imports | | commonjs | @arslivinski/eslint-config/commonjs | To be used when the files make use of CommonJS | | script | @arslivinski/eslint-config/script | To be used when the files are simple browser scripts, usualy imported with the <script> tag that don't make use of ES imports or CommonJS | | browser | @arslivinski/eslint-config/browser | To lint files that will be used on a web browser | | node | @arslivinski/eslint-config/node | To lint files that will be used on a NodeJS environment | | serviceworker | @arslivinski/eslint-config/serviceworker | To be used with ServiceWorkers | | worker | @arslivinski/eslint-config/worker | To be used with Workers | | webextension | @arslivinski/eslint-config/webextension | To be used with WebExtensions | | scripting | @arslivinski/eslint-config/scripting | For script files, like build or release scripts, allowing to usage of console.log and imports from devDependencies | | jest | @arslivinski/eslint-config/jest | For Jest test files. Require eslint-plugin-jest |