@ashstack/lint

中文文档
0.11.0发布于 2026/09/30MITTypeScriptES Module零依赖构建来源已验证近 30 天下载 5105

灰斯塔克共享了牛林配置和自定义规则. 条目:核心,反应,反应-内在,由每个图书馆的规则组自动从您的依赖性中分出. 从克克林特来接你.

中文使用文档
文档目录7 节
  1. 安装
  2. 单曲
  3. 每个条目添加的
  4. 自动检测的图书馆专用规则
  5. 选择规则
  6. 规则参考
  7. 许可证

@ashstack/lint (英语)

严格共享 奥克林特 配置:116 关于平版Script的规则,211 有React,268 关于React Introduct,其中82个是自定义建造的. 3个条目,每个条目包含它面前的一: core(), (中文(简体) ), react(), (中文(简体) ), react-native()。 。 。 .

图书馆专用的规则船只在你依赖图书馆时, 所以没有什么关于代码的火你没有.

严相以特从. 一个小时之内写出比任何人都多的代码逐行审查,而linter是唯一能读出所有代码的东西. 每条消息都给固定点取名,这样一个特工就可以在没有第二次提示的情况下对它采取行动.

安装

bun add -d oxlint oxlint-tsgolint @ashstack/lint
// oxlint.config.mts (JSON configs can't resolve npm packages, so TS config only)
import { core } from "@ashstack/lint/core"; // or: /react, /react-native
import { defineConfig } from "oxlint";

export default defineConfig({
  extends: [core()],
  rules: { "@ashstack/query/no-inline-keys": "off" }, // your overrides always win
});
oxlint --type-aware --deny-warnings .

留着 defineConfig 包装 它是什么类型 rules 块,所以错了 规则选项是一个编译错误,而徘徊规则 id 显示它所做的和 链接到此处的一节。 一个赤裸的 export default { ... } 没有,沉默地 —— 说 satisfies OxlintConfig 如果你不想包起来也行.

类型意识规则需要 oxlint-tsgolint 。节点22.18+.

导入您使用的条目 。 没有软件包根可以导入, 所以没有 装入规则文件, 您无法使用 : @ashstack/lint/core 装入 27 KB 在其中 3个的根再出口将装载137 KB. react 财务报告和审定财务报表 react-native 无论是哪种方式,都装入大部分,因为他们配置了大部分规则.

import { core } from "@ashstack/lint/core";
import { react } from "@ashstack/lint/react";
import { reactNative } from "@ashstack/lint/react-native";

每个条目还有一个默认导出, 并带有自己的选项类型 (单位:千美元)CoreOptions, (中文(简体) ), ReactOptions, (中文(简体) ), ReactNativeOptions) (中文(简体) ).

单曲

嵌入式配置代替上面的配置而不是合并,所以每个工作空间 配置扩展条目本身 。 自己买的 plugins 数组与 输入的,从未换过它:

// apps/backend/oxlint.config.mts — a backend that also renders JSX templates
import { core } from "@ashstack/lint/core";
import { defineConfig } from "oxlint";

export default defineConfig({
  extends: [core()],
  plugins: ["react", "jsx-a11y"],
  rules: { "react/jsx-key": "error" },
});

放下枪 extends 而工作空间只保留它命名的规则,没有 诊断其他的都不见了.

每个条目添加的

core() 是一个严格的 eslint / 打字符 / 独角兽 / 承诺 / 导入基数加 @ashstack/core/ 公约规则. react() 添加反应, jsx- a11y, React 编译器和您- might- not- need- an- effect. react-native() 添加通则 @ashstack/react-native/ 规则:被泄露的制作,取景巢穴,iOS-只键盘事件,远程图像.

自动检测的图书馆专用规则

每个库一个模块:一个规则命名空间,一个切换. 一个模块在库里打开 package.json,搜索到 repo 根.

@ashstack/zod • 妇女 @ashstack/query • 妇女 @ashstack/zustand • 妇女 @ashstack/i18n • 妇女 @ashstack/stylex • 妇女 @ashstack/unistyles • 妇女 @ashstack/legend-list • 妇女 @ashstack/legend-state • 妇女 @ashstack/reanimated • 妇女 @ashstack/turbo-image • 妇女 @ashstack/skia • 妇女 @ashstack/keyboard

检测只设置默认值 。 打开或关闭任何模块,不管你的依赖说:

reactNative({ unistyles: false, i18n: true });

导入禁令仅遵循检测; 按规则名称禁用 .

选择规则

默认情况下,由于他们首先需要团队决定: -ashstack/resact/ prefer-design-system"和`@-ashstack/resact/组件-tsx-只".

规则参考

规则.md 包括所有规则,包括选项和实例。 由规则产生并经过CI检查.

许可证

麻省理工学院

版本与发布记录

@ashstack/lint 共发布 19 个版本,首次发布于 2026/09/02;过去 12 个月发布了 19 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.11.0latest2026/09/301 个月前
0.10.42026/09/291 个月前
0.10.32026/09/291 个月前
0.10.22026/09/281 个月前
0.10.12026/09/251 个月前
0.10.02026/09/241 个月前

关于 @ashstack/lint 的常见问题

@ashstack/lint 是什么?

灰斯塔克共享了牛林配置和自定义规则. 条目:核心,反应,反应-内在,由每个图书馆的规则组自动从您的依赖性中分出. 从克克林特来接你.

如何安装 @ashstack/lint?

在项目目录运行 npm install @ashstack/lint,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:oxlint(>=1.79.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@ashstack/lint 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@ashstack/lint 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@ashstack/lint 可以商用吗?

@ashstack/lint 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@ashstack/lint 的下载量有多少?

根据 npm 官方下载统计,@ashstack/lint 在 2026/10/07 – 2026/11/05 这 30 天内被下载 5,105 次,日均约 170 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@ashstack/lint 还在维护吗?

最新版本 0.11.0 发布于 2026/09/30(1 个月前);至今共发布 19 个版本,其中过去 12 个月发布了 19 个;首次发布于 2026/09/02。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。