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

eslint-config-danyo-towa

v0.0.22

Published

ESLint and Prettier Config for JavaScript, React and TypeScript

Readme

Basic ESLint and Prettier Config for JavaScript, TypeScript and React 👨‍💻

What this setup provides

  • Lints JavaScript/TypeScript based on the current standards
  • Fixes formatting issues with Prettier
  • Lints + Fixes React and React Hooks based on the eslint config of airbnb with some minor changes to it based on my preferences
  • See the applied rules

Getting up and running 🏃‍♂️

I use this setup globally to have linting for random JavaScript Files but you can also install this on a per project basis.

Local / per Project Install 📂

  1. If you have a package.json in your project you can skip this step. Otherwise create a package.json with npm init.
  2. Install this configuration by running
npx install-peerdeps --dev eslint-config-danyo-towa
  1. You can see all the installed packages in the devDependencies section of your package.json
  2. In the root directory of your project (That's where your package.json lives aswell). Create a .eslintrc.js or .eslintrc file and fill it with:
{
  "extends": ["danyo"]
}

If you are using TypeScript add the following instead:

{
  "extends": ["danyo", "danyo/ts"]
}

To reduce file clutter in your project you alternatively can put this object in your package.json under the property "eslintConfig":.

Global Install 🌍

  1. Install the configuration and all dependencies globally
npx install-peerdeps --global eslint-config-danyo-towa
  1. Create a global .eslintrc or .eslintrc.js file. ESLint will look in your home directory
  • ~/.eslintrc or ~/.eslintrc.js on a mac
  • C:\Users\{username}/.eslintrc or C:\Users\{username}/.eslintrc.js on windows

The Content of if this file should look like this

{
  "extends": ["danyo"]
}

or this if you use TypeScript

{
  "extends": ["danyo", "danyo/ts"]
}

Run your linter from the Command Line 💻

After the setup step you can add the following code to your "scripts" section of your package.json to run the linter from the commandline.

  • run npm run lint to lint your errors
  • run npm run lint:fix to lint and automatically fix all fixable issues.
"scripts": {
  "lint": "eslint .",
  "lint:fix": "eslint . --fix"
},

Let your Editor take care of linting/fixing (settings for VS Code)

  1. Install the ESLint extension
  2. Setup Vs Code settings via CodePreferencesSettings (or hit cmd + , on a mac). To get to the json view click the Open Settings (JSON) icon in the top right corner.
"editor.formatOnSave": true //runs auto formatting for all files
//turns of auto formatting for JS, JSX, TS and TSX because eslint takes care of this
"[javascript, typescript]": {
  "editor.formatOnSave": false
},
//tells the eslint plugin to run when we save
"editor.codeActionsOnSave": {
  "source.fixAll.eslint": true
},
"eslint.run": "onSave", //runs eslint when you save a file
"eslint.validate": [ //sets filetypes eslint watches
  "javascript",
  "javascriptreact",
  "typescript",
  "typescriptreact"
],
"eslint.alwaysShowStatus": true, //shows the eslint status in the status bar

/* OPTIONAL SETTING if you have the prettier VS Code Extension installed
 * This code tells the exentsion that we already take care of formatting these filetypes
 */
"prettier.disableLanguages": [
  "javascript",
  "javascriptreact",
  "typescript",
  "typescriptreact"
]

Extend/Overwrite this config

You can overwrite both eslint and prettier settings in your own .eslintrc or eslintrc.js file.

  • ESLint rules are written under "rules"
  • Prettier Settings are inside the "rules" under "prettier/prettier". Prettier rules overwrite everything previous defined so you have to write settings that you would like to keep aswell

Extension Example:

{
  "extends": [
    "danyo"
  ],
  "rules": {
    "react/prefer-stateless-function": 2,
    "prettier/prettier": [
      "error",
      {
        "bracketSpacing": true,
        "printWidth": 120,
        "singleQuote": true,
        "useTabs": true, //don't @ me for this 👾
        "tabWidth": 4,
        "trailingComma": "es5"
      }
    ]
  }
}

💩💩💩 When it's not working 💩💩💩

There's the possibility that global modules fail on installation. This will remove them from your system to start out fresh.

npm remove --global eslint-config-danyo-towa eslint eslint-config-airbnb eslint-config-prettier eslint-plugin-html eslint-plugin-import eslint-plugin-jsx-a11y eslint-plugin-prettier eslint-plugin-react eslint-plugin-react-hooks prettier babel-eslint eslint-import-resolver-typescript typescript @typescript-eslint/parser @typescript-eslint/eslint-plugin

For a local installation omit the --global flag. After that follow the setup guide again.


🙌 Feel free to contribute 🙌