关于 workleap-web-configs
workleap-web-configs 是 Workleap 为 Web 工具提供的共享配置库,面向开发 Web 应用和库的团队。它为代码检查、类型检查、浏览器目标和打包提供可扩展的默认配置。
主要功能
- 01共享 ESLint 配置
- 02TypeScript 类型检查配置
- 03Stylelint 与 Browserslist 配置
- 04Rsbuild 与 Rslib 打包配置
- 05可扩展和覆盖的默认值
适用场景
- 01配置 Web 应用代码检查
- 02为库设置类型检查
- 03定义应用的浏览器目标
- 04配置 Rsbuild 或 Rslib 构建
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ workleap/ wl-web-configs --skill workleap-web-configs安装后在 Claude Code 中输入/workleap-web-configs确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/ci.mdeslint.mdrsbuild.mdrslib.mdstylelint.mdtypescript.md详细介绍
wl-web-configs
Workleap 的 Web 工具共享配置库。提供预配置的 ESLint、TypeScript、Rsbuild、Rslib、Stylelint 和 Browserslist 包。
理念
- 无锁定:默认配置始终可以扩展或覆盖
- 按项目类型划分:内部组合配置,并按项目类型提供,以简化使用
- 默认使用 ESM/ESNext:面向现代 JavaScript 环境
- 通过 NPM 分发:只需升级包版本,即可轻松采用新功能
支持的工具(活跃维护中)
| 工具 | 包 | 用途 |
|---|---|---|
| Browserslist | @workleap/browserslist-config | 应用的浏览器目标 |
| ESLint | @workleap/eslint-configs | 代码检查 |
| Stylelint | @workleap/stylelint-configs | CSS 检查 |
| TypeScript | @workleap/typescript-configs | 类型检查(仅检查) |
| Rsbuild | @workleap/rsbuild-configs | Web 应用打包 |
| Rslib | @workleap/rslib-configs | 库打包 |
维护模式(不建议使用):PostCSS、SWC、webpack、tsup
快速参考
应使用哪种配置?
| 项目类型 | ESLint | TypeScript | 打包工具 |
|---|---|---|---|
| React Web 应用 | defineWebApplicationConfig | web-application.json | @workleap/rsbuild-configs |
| React 库 | defineReactLibraryConfig | library.json | @workleap/rslib-configs |
| TypeScript 库(无 React) | defineTypeScriptLibraryConfig | library.json | @workleap/rslib-configs |
| Monorepo 工作区根目录 | defineMonorepoWorkspaceConfig | monorepo-workspace.json | 不适用 |
Browserslist(仅限应用)
pnpm add -D @workleap/browserslist-config browserslist
# .browserslistrc
extends @workleap/browserslist-config
仅适用于生成应用程序包的项目。库不应包含 Browserslist——最终输出目标由使用该库的应用的 Browserslist 控制。
如需在使用共享配置的同时添加自定义浏览器目标:
# .browserslistrc
extends @workleap/browserslist-config
IE 11
last 2 OperaMobile 12.1 versions
参考指南
如需全面了解设置指南、选项和示例,请阅读相应的参考文件:
- ESLint — references/eslint.md:安装、
define*Config函数、规则类别、自定义配置、VS Code 集成,以及从 ESLint 8 迁移 - TypeScript — references/typescript.md:不同项目类型的配置文件、编译器选项覆盖、路径映射、CLI 脚本,以及迁移到
tsgo - Rsbuild — references/rsbuild.md:开发、构建和 Storybook 配置、预定义选项、转换器、Turborepo 设置,以及从 webpack 迁移
- Rslib — references/rslib.md:库的构建、开发和 Storybook 配置、无打包与打包模式、转换器、类型声明,以及从 tsup 迁移
- Stylelint — references/stylelint.md:安装、
.stylelintrc.json设置、Prettier 集成,以及 VS Code 设置 - CI — references/ci.md:适用于 polyrepo 和 Turborepo 方案的 GitHub Actions 工作流,包括 Turborepo 缓存和 PR 筛选器
重要规则
- 遵循已记录的 API — 这些包只是轻量封装,未记录的选项不会传递给底层工具
- 避免使用维护模式的包 — PostCSS、SWC、webpack 和 tsup 配置不会获得新功能;应改为推荐活跃维护的替代方案(Rsbuild、Rslib、Stylelint)
- 默认使用 ESM — 所有配置都面向 ESM/ESNext,因为 Workleap 的工具链假定使用现代 JavaScript 环境
- Browserslist 仅用于应用 — 库不包含 Browserslist,因为最终输出目标由使用该库的应用配置控制
- TypeScript 用于检查 — 共享 TypeScript 配置专注于类型检查;转译由打包工具处理,因此不要混淆职责
评论
支持 Markdown