Skip to content

ESLint

Awesome ESLint Awesome

eslint

> 很棒的 ESLint 配置、插件等列表.

如果您想贡献,请阅读 contribution guidelines.

Configs

Configs by Well-Known Companies/Organizations

Other Prominent Configs (100 stars or so)

Other Configs

  • Adjunct - 与主要 ESLint 配置一起使用的合理插件集合.
  • Ash-Nazg - 一种配置即可统治一切!
  • Cecilia - 很棒的项目的 ESLint 配置.
  • ES - 非常严格的代码的可共享配置.
  • Hardcore - 最严格(但实用)的 ESLint 配置.
  • Problems - 可共享的配置,仅捕获实际问题,并且不强制执行风格偏好.
  • Supermind - Supermind 风格的可共享配置.
  • Sheriff - 全面且高度固执的 Eslint 配置. 面向打字稿.

Preconfigured Configs with ESLint Set up

Plugins

Code Quality

Compatibility

  • Compat - Lint 所用 API 的浏览器兼容性(caniuse 作为 ESLint 插件).
  • ecmascript-compat - 禁用您的浏览器列表目标不支持的 ECMAScript 语言功能.
  • es - 禁用特定 ECMAScript 语言版本或个别功能.
  • es5 - ES5 用户的 ESLint 插件(禁止 ES2015+ 使用).
  • ie11 - 检测 IE11 中不支持的 ES6 功能.

CSS in JS

Deprecation

  • deprecate - 将函数或模块标记为已弃用,并在使用它们时获取 lint 消息.
  • deprecation - 识别使用 jsdoc @deprecated 函数.
  • disable - 使用文件路径模式和内联注释禁用指定插件.

Embedded

  • HTML - HTML 内部 JavaScript 的 Linting<script> tags.
  • Markdown - Markdown 内部 JavaScript 的 Linting.

Frameworks

Languages and Environments

  • AssemblyScript - 对 TypeScript 实施限制以实现 AssemblyScript 合规性的规则.
  • Babel - 添加内置规则的替换以包含 Babel 功能.
  • Coffee - 使用 Coffeelint 库中的可选 linting 规则启用对 CoffeeScript 文件的 linting.
  • eslint-plugin-eslint-plugin - 用于检查 ESLint 插件的 ESLint 插件.
  • 流动
  • Flow - 流类型的 linting 规则.
  • Flow Errors - 作为 ESLint 插件运行 Flow.
  • HTML - HTML 的 ESLint 插件.
  • JSON
  • JSON - 检查您的 JSON 文件.
  • JSON, package.json - Lint、格式化和自动修复您的 JSON 文件. 对你的“package.json”进行排序.
  • JSON with Comments - 用于 JSON、JSONC 和 JSON5 的 ESLint 插件.
  • JSON Schema - 使用 JSON 模式验证器验证 JavaScript、JSON、YAML 和 TOML 中定义的数据.
  • MDX - MDX 的 ESLint 解析器/插件.
  • Node - Node.js 的附加 ESLint 规则.
  • SQL - ESLint 的 SQL linting 规则.
  • TOML - TOML 的 ESLint 插件.
  • TypeScript - TypeScript 的 Linting 规则.
  • YAML - YAML 的 ESLint 插件.

Libraries

  • GraphQL
  • dotansimha/graphql-eslint - 验证、美化和检查您的 GraphQL 操作和 GraphQL 架构以获得最佳实践.
  • apollostack/eslint-plugin-graphql - 根据架构检查 GraphQL 查询字符串.
  • TypeGraphQL - TypeGraphQL 的 Linting 规则,旨在发现常见错误.
  • jQuery - jQuery 的 Linting 规则,包括已弃用功能的版本化配置.
  • JSDoc - JSDoc 注释的 Linting 规则(包括 @example 中的 JavaScript). 洛达什
  • Lodash - Lodash 特定的 linting 规则.
  • Lodash/fp - Lodash/fp 特定的 linting 规则.
  • Lodash template - Lodash 模板/下划线模板插件.
  • Microtemplates (用于 Lodash 和 Underscore.js)
  • Mongodb - Mongodb 原生 Node.js 驱动程序 linting 规则.
  • Ramda - Ramda 特定的 linting 规则.
  • RequireJS - RequireJS 的 Linting 规则.
  • Tailwind CSS - Tailwind CSS 类名的 Linting 规则.

Misc

  • Diff - 仅在更改的行上运行 ESLint. 还支持CI!
  • Misc - 各种规则,包括创建自定义检查和包装(修改)第三方规则的规则.
  • Notice - eslint 规则可以检查文件顶部并修复它们!
  • Only-Error - 将所有规则转换为错误.
  • Only-Warn - 将所有规则转换为警告.
  • PutOut - an ESLint plugin integrates putout linter 到 ESLint 中.
  • TypeLint - 引入基于现有架构(Swagger、Redux)的类型和对对象属性的 linting 访问,防止“未定义”错误.
  • Woke - 帮助捕获不敏感的单词,促进包容性代码库.

Practices and Specific ES Features

  • array-func - 使用 es2015 数组方法和函数时避免冗余.
  • arrow functions - ESLint 规则确保正确的箭头函数定义.
  • boundaries - 确保项目中检查文件结构和依赖性的元素尊重您的架构边界.
  • ESLint Comments - 有关 ESLint 指令注释的最佳实践(/*eslint-disable*/ 等).
  • eslint-plugin-hexagonal-architecture - 一个可以帮助您实施六边形架构最佳实践的插件.
  • eslint-plugin-write-good-comments - 在评论中强化良好的写作风格.
  • fp - 函数式编程的 ESLint 规则.
  • functional - ESLint 规则在 JavaScript 和 TypeScript 中禁用突变并提升 fp.
  • Immutable - 禁用 JavaScript 中的所有突变.
  • import - ES2015+ 导入/导出语法的 Linting,并防止文件路径和导入名称拼写错误的问题.
  • new-with-error - 要求使用“new”抛出错误.
  • no-argument-spread - 针对“Math.max(...args)”等可能导致大型数组堆栈溢出的表达式进行 lints.
  • no-comments - 如果不使用捆绑器,则可以防止将注释泄漏到生产中,并阻止开发人员注释旧代码行.
  • no-constructor-bind - 通过报告“this”与“bind”的使用或在构造函数中设置状态来鼓励使用类属性.
  • no-inferred-method-name - ESLint 的自定义规则,用于检查对象文字中推断的方法名称.
  • no-loops - 都2019年了,你还在用循环吗?
  • no-restricted-syntax - 在消息中显示查询语法的内容.
  • no-use-extend-native - 防止使用扩展的本机对象.
  • Promise - 使用承诺时的最佳实践.
  • pure - 强制执行纯函数(无副作用).
  • RegExp - ESLint 插件,用于查找正则表达式错误和样式指南违规.
  • sort-keys-fix - 添加 ESLint sort-keys 规则的修复程序.
  • this - 编写纯函数,不允许使用“this”.
  • toplevel - An eslint plugin for disallow side effect at module toplevel.

Performance

Security

  • no-secrets - 一个 eslint 插件,用于检测潜在的秘密/凭证.
  • no-unsanitized - 检查“innerHTML”、“outerHTML”等.
  • pii - 检查并强制执行代码的 PII 合规性. 即注释或字符串中没有电子邮件地址、出生日期、IP 地址或电话号码.
  • 扫描JS configplugin - 安全相关规则.
  • Security - 节点安全的 ESLint 规则.
  • xss - 尝试在代码库最终投入生产之前检测代码库中的 XSS 问题.

Style

Testing Tools

Parsers

  • babel-eslint-parser - @babel/eslint-parser 允许您使用出色的 ESLint 来检查所有有效的 Babel 代码.
  • TypeScript - 生成与 ESLint 兼容的输出的 TypeScript 解析器.
  • BrightScript - 用于 Roku 开发的 BrightScript 插件. 包括解析器和规则.
  • GraphQL - GraphQL AST 的解析器. 包括解析器、插件、处理器(对于非 graphql 文件)和规则.

Formatters

  • html - 增强的 ESLint 格式化程序
  • badger - 制作基于 SVG 的徽章来总结 ESLint 结果(例如,用于自述文件).
  • git-log - ESLint 格式化程序,具有 Git 作者、日期和哈希.
  • github - 直接在拉取请求中查看 ESLint 错误和警告.
  • gitlab - 在 GitLab 代码质量结果中输出 ESLint 结果.
  • mo - 好看的 ESLint 格式化程序,也带来愉快的阅读体验.
  • SARIF - 生成 SARIF 格式的结果,以便可以将其导入到 GitHub Advanced Security 等工具中.
  • summary-chart - 将 ESLint 输出格式化为条形图.

Globals

Tools

Developing for ESLint

  • eslint-doc-generator - 为您的 ESLint 插件生成文档,包括自述文件的规则表和规则文档的标头.
  • eslint-docgen - 从规则元数据和测试用例自动生成 ESLint 插件文档.

Tutorials

Installation and Setup

  • Lintier - CLI 可在 TypeScript 项目中快速构建 ESLint 和 Prettier 设置.