Aurora ESLint plugin (rules) + flat config (recommended)
npm install eslint-plugin-aurora-999Aurora 项目 ESLint 插件:提供一套可复用的基础 Flat Config(JS/TS/import),并附带若干 Aurora 约定的结构/语义类自定义规则。
- 运行环境:Node.js >= 18
- ESLint:v9+(Flat Config)
``bash`
npm i -D eslint eslint-plugin-aurora
说明:本插件内部会用到 @eslint/js、typescript-eslint、eslint-plugin-import、globals 等依赖;安装本插件时会一并安装。
如果你需要让 eslint-plugin-import 的 TypeScript 解析/路径解析更准确,建议项目也安装:
`bash`
npm i -D eslint-import-resolver-typescript
在项目根目录创建/修改 eslint.config.js:
`js
const aurora = require("eslint-plugin-aurora");
const baseDir = __dirname;
module.exports = [
// 1) 基础规则集(JS/TS/import)
...aurora.configs.recommended(baseDir),
// 2) 选择性启用 Aurora 自定义规则
{
plugins: { aurora },
rules: {
"aurora/base-check": "error",
"aurora/trial-check": "error",
"aurora/scene-check": "error",
"aurora/prefab-check": "error",
},
},
];
`
然后执行:
`bash`
npx eslint .
在本项目根目录下执行。
`bash1) 登录 npm(如已登录可跳过)
npm login
如果你想先确认发布内容是否正确,可以先运行:
`bash
npm publish --dry-run
`configs
$3
生成基础 Flat Config 数组,包含:
-
@eslint/js 的 recommended
- typescript-eslint:
- 若 baseDir/tsconfig.json 存在,则启用 type-aware 的 recommendedTypeChecked
- 否则降级为 recommended
- eslint-plugin-import 的 recommended + 常用 resolver/settings>
baseDir 必须传项目根目录(用于定位 tsconfig.json)。rules
-
aurora/base-check
- 当前版本默认不做检查(已禁用,保留 rule id 以兼容历史配置)
- aurora/trial-check
- 仅对 *trialService.ts 生效(不要求目录结构)
- 约束 TrialGenerator 子类、generate() 方法以及返回值包含 target_answer
- aurora/scene-check
- 仅对 *scene.ts 生效
- 约束 Phaser/BaseScene/NodeConfig 的导入与 getSceneConfig() 返回
- aurora/prefab-check
- 仅对 *prefab.ts 生效
- 约束 Phaser/phaser-kit 导入、PrefabConfig 结构,以及 GameObjectFactory remove/register目录结构
-
lib/index.js:插件入口(导出 rules 与 configs)
- lib/configs/base-config.js:基础 Flat Config 生成函数
- lib/rules/*.js:Aurora 自定义规则实现备注
- 更详细的背景与设计说明见:
设计.md`