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

@kellerkinder/eslint-config

v3.2.0

Published

Kellerkinder ESLint configuration

Downloads

310

Readme

Kellerkinder ESLint Config

npm version

This package provides the Kellerkinder ESLint configuration for JavaScript, TypeScript and Vue 3. It is based on the AirBnB Configuration with slight alterations.

Requirements

This config has been developed and tested with the following requirements:

  • NodeJS >= 12
  • ESLint >= 7.2.0

Installation

In order to use this configuration, run the following scripts in your NodeJS project:

npm i -D eslint @kellerkinder/eslint-config

Usage

You can use this configuration by creating an .eslintrc.json inside your project's root directory that is extending this configuration.

{
    "extends": "@kellerkinder/eslint-config"
}

You can now execute eslint by running the following script:

npx eslint src/

The src/ directory can be replaced with the directory or file you want to lint.

If you want ESLint to try to fix the errors it found, execute the following command:

npx eslint src/ --fix

Alternatively, refer to your IDE's documentation to find out, if and how ESLint is integrated.

Babel Configuration

If you are using babel in your project, you can provide ESLint with your own configuration file, by adding this section to your ESLint config:

{
  "parserOptions": {
      "babelOptions": {
          "configFile": "path/to/your/.babelrc"
      }
  }
}

By default, this configuration comes with babel support for class properties. So unless other babel features are required, you can safely omit this part of the configuration.

TypeScript

If you are working with a TypeScript codebase, you want to change your .eslintrc.json to extend the @kellerkinder/eslint-config/typescript config instead, making it look like this:

{
    "extends": "@kellerkinder/eslint-config/typescript"
}

This configuration contains all the rules from the default configuration and extends it by some TypeScript-specific rules.

Vue 3

If you are working with a Vue 3 application, you want to change your .eslintrc.json to extend the @kellerkinder/eslint-config/vue config instead, making it look like this:

{
    "extends": "@kellerkinder/eslint-config/vue"
}

Using the Vue 3 configuration automatically assumes that you are using TypeScript as well.

Testing

This project features basic configuration tests using Vitest. Tests are automatically execute on push and before publishing. To execute the tests manually, use the following command:

npm test

Troubleshooting

Linter is not a constructor

This error is known to be caused by an empty .eslintignore file. To solve this, either make sure that your .eslintignore contains at least one entry or is removed entirely.

Publishing

In order to publish a new version of this package on npm, follow these steps:

  1. Bump the version field inside the package.json
  2. Create an entry inside the CHANGELOG.md
  3. Push your code to main
  4. Tag your commit with the respective version
  5. Create a Github release

Now, GitHub Actions will build and publish the new version on npm.

Changelog

This project adheres to Semantic Versioning. Please refer to the CHANGELOG.md for detailed changes and migration instructions.

License

MIT