Socket
Socket
Sign inDemoInstall

eslint-config-productsway

Package Overview
Dependencies
13
Maintainers
1
Versions
37
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

eslint-config-productsway


Version published
Weekly downloads
820
decreased by-38.9%
Maintainers
1
Install size
17.5 MB
Created
Weekly downloads
 

Readme

Source

eslint-config-productsway 👋

Version License: MIT Twitter: jellydn

Enhance your code quality with XO's ESLint config, further augmented with TypeScript and Prettier support.

IT Man - A Guide to Professional JavaScript & TypeScript Development [Vietnamese]

Installation

npx install-peerdeps --dev eslint-config-productsway

Usage

Create a .eslintrc.cjs file at the root of your project's directory.

For TypeScript projects:

module.exports = {
    extends: ['productsway/typescript'],
};

For TypeScript and React projects:

module.exports = {
    root: true,
    env: { browser: true, es2020: true },
    extends: ['productsway/react'],
    ignorePatterns: ['dist', '.eslintrc.cjs', 'vite.config.ts'],
    parserOptions: {
        project: ['./tsconfig.json', './tsconfig.node.json'],
    },
    rules: {},
};

Configuring the ESLint TypeScript Parser

If your project uses TypeScript, ensure to configure the ESLint TypeScript parser by specifying your tsconfig.json files in the parserOptions.project array:

module.exports = {
    extends: ['productsway/typescript'], // or 'productsway/react' for TypeScript and React
    parserOptions: {
        project: ['./tsconfig.json', './tsconfig.node.json'], // include all your tsconfig.json files here
    },
};

Executing ESLint

From your project's root directory, execute:

npx eslint . --ext .js,.jsx,.ts,.tsx

For Vite React App, include .ts and .tsx extensions and report unused disable directives:

"lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",

Integration with Next.js

For Next.js projects, you can use the following configuration in your .eslintrc.json file:

{
    "extends": ["productsway/react", "plugin:@next/next/recommended"]
}

Please note: You need to install eslint-config-next to use the recommended ESLint configuration for Next.js.

Roadmap

Tips

Sorting Imports with Prettier Plugin

For consistent import ordering, utilize the trivago/prettier-plugin-sort-imports plugin.

In your .prettierrc.js file:

module.exports = {
  ...
  "importOrder": ["^@core/(.*)$", "^@server/(.*)$", "^@ui/(.*)$", "^[./]"],
  "importOrderSeparation": true,
  "importOrderSortSpecifiers": true,
  "plugins": ["@trivago/prettier-plugin-sort-imports"]
}

Resources

Author

👤 Huynh Duc Dung

Show Your Support

If this project assists you, give it a ⭐️!

Keywords

FAQs

Last updated on 18 Nov 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc