fe-kit-cli 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +89 -0
- package/dist/cli.mjs +1738 -0
- package/dist/cli.mjs.map +1 -0
- package/dist/rules/common/typescript.mdc +21 -0
- package/dist/rules/react/component-conventions.mdc +24 -0
- package/dist/rules/react/hooks.mdc +20 -0
- package/dist/rules/react/react-router.mdc +18 -0
- package/dist/rules/react/state-management.mdc +21 -0
- package/dist/rules/vue/component-conventions.mdc +23 -0
- package/dist/rules/vue/composition-api.mdc +24 -0
- package/dist/rules/vue/state-management.mdc +16 -0
- package/dist/rules/vue/vue-router.mdc +18 -0
- package/dist/skills/app-ui-design/SKILL.md +62 -0
- package/dist/skills/app-ui-design/references/rules.md +127 -0
- package/dist/skills/e2e-testing/SKILL.md +327 -0
- package/dist/skills/eval-harness/SKILL.md +271 -0
- package/dist/skills/frontend-design/SKILL.md +43 -0
- package/dist/skills/frontend-patterns/SKILL.md +643 -0
- package/dist/skills/security-review/SKILL.md +496 -0
- package/dist/skills/tailwindcss-advanced-layouts/SKILL.md +595 -0
- package/dist/skills/tdd-workflow/SKILL.md +464 -0
- package/dist/skills/verification-loop/SKILL.md +127 -0
- package/dist/skills/wechat-ui-design/SKILL.md +64 -0
- package/dist/skills/wechat-ui-design/references/rules.md +121 -0
- package/dist/templates/react-rspack-ts/index.html +11 -0
- package/dist/templates/react-rspack-ts/package.json +20 -0
- package/dist/templates/react-rspack-ts/rspack.config.ts +23 -0
- package/dist/templates/react-rspack-ts/src/App.tsx +7 -0
- package/dist/templates/react-rspack-ts/src/main.tsx +9 -0
- package/dist/templates/react-rspack-ts/tsconfig.json +17 -0
- package/dist/templates/react-vite-ts/index.html +12 -0
- package/dist/templates/react-vite-ts/package.json +22 -0
- package/dist/templates/react-vite-ts/src/App.tsx +7 -0
- package/dist/templates/react-vite-ts/src/main.tsx +9 -0
- package/dist/templates/react-vite-ts/tsconfig.json +19 -0
- package/dist/templates/react-vite-ts/vite.config.ts +9 -0
- package/dist/templates/react-webpack-ts/index.html +11 -0
- package/dist/templates/react-webpack-ts/package.json +25 -0
- package/dist/templates/react-webpack-ts/src/App.tsx +7 -0
- package/dist/templates/react-webpack-ts/src/main.tsx +9 -0
- package/dist/templates/react-webpack-ts/tsconfig.json +17 -0
- package/dist/templates/react-webpack-ts/webpack.config.ts +29 -0
- package/dist/templates/vue-rspack-ts/index.html +11 -0
- package/dist/templates/vue-rspack-ts/package.json +18 -0
- package/dist/templates/vue-rspack-ts/rspack.config.ts +16 -0
- package/dist/templates/vue-rspack-ts/src/App.vue +7 -0
- package/dist/templates/vue-rspack-ts/src/main.ts +4 -0
- package/dist/templates/vue-rspack-ts/tsconfig.json +17 -0
- package/dist/templates/vue-vite-ts/index.html +12 -0
- package/dist/templates/vue-vite-ts/package.json +19 -0
- package/dist/templates/vue-vite-ts/src/App.vue +7 -0
- package/dist/templates/vue-vite-ts/src/main.ts +4 -0
- package/dist/templates/vue-vite-ts/tsconfig.json +19 -0
- package/dist/templates/vue-vite-ts/vite.config.ts +9 -0
- package/dist/templates/vue-webpack-ts/index.html +11 -0
- package/dist/templates/vue-webpack-ts/package.json +24 -0
- package/dist/templates/vue-webpack-ts/src/App.vue +7 -0
- package/dist/templates/vue-webpack-ts/src/main.ts +4 -0
- package/dist/templates/vue-webpack-ts/tsconfig.json +17 -0
- package/dist/templates/vue-webpack-ts/webpack.config.ts +32 -0
- package/package.json +63 -0
package/README.md
ADDED
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
# fe-kit
|
|
2
|
+
|
|
3
|
+
前端项目脚手架 CLI:初始化新项目、增强现有项目,并管理开发工具、Skills、MCP 与框架规则(Vue / React + TypeScript,支持 Vite、Webpack、Rspack)。
|
|
4
|
+
|
|
5
|
+
## Breaking Changes (v0.2.0)
|
|
6
|
+
|
|
7
|
+
- **TSLint 已移除**:TSLint 早在 2019 年即被官方废弃,fe-kit 不再提供 TSLint 选项与生成器。请使用 ESLint + `typescript-eslint`(已为默认)。
|
|
8
|
+
- **配置输出路径变更**:Skills、Rules、MCP 不再写入 `.fe-kit/` 作为编辑器配置,改为直接写入各编辑器标准目录(见下文)。如果你之前依赖 `.fe-kit/skills.json` 或 `.fe-kit/mcp.json` 作为编辑器读取入口,需手动迁移。
|
|
9
|
+
- **新增 Cursor 作为独立适配目标**:之前只有 `vscode`,现在 `cursor` 是独立选项,默认选中。
|
|
10
|
+
|
|
11
|
+
## 编辑器配置输出
|
|
12
|
+
|
|
13
|
+
`init` / `enhance` 执行后,根据选择的开发工具,配置会写入以下**编辑器标准目录**:
|
|
14
|
+
|
|
15
|
+
| 编辑器 | Rules | Skills | MCP |
|
|
16
|
+
|--------|-------|--------|-----|
|
|
17
|
+
| **Cursor** | `.cursor/rules/*.mdc` | — (通过 rules 生效) | `.cursor/mcp.json` (`mcpServers`) |
|
|
18
|
+
| **Claude Code** | `.claude/rules/*.md` | `.claude/skills/<id>/SKILL.md` | `.mcp.json` (`mcpServers`) |
|
|
19
|
+
| **VS Code + Copilot** | `.github/copilot-instructions.md` | — (通过 instructions 生效) | `.vscode/mcp.json` (`servers`) |
|
|
20
|
+
| **CodeBuddy** | `.codebuddy/rules/*.mdc` | — (通过 rules 生效) | `.mcp.json` (`mcpServers`) |
|
|
21
|
+
| **Trae** | `.trae/rules/*.md` | `.trae/rules/<id>.md` | `.trae/mcp.json` (`mcpServers`) |
|
|
22
|
+
|
|
23
|
+
`.fe-kit/` 目录仍用于存储 fe-kit 内部元数据(`project.json` 等),但不再作为编辑器配置的输出目标。
|
|
24
|
+
|
|
25
|
+
## 环境要求
|
|
26
|
+
|
|
27
|
+
- Node.js ≥ 18
|
|
28
|
+
- **pnpm** ≥ 9(本仓库通过 `packageManager` 固定版本,建议启用 [Corepack](https://nodejs.org/api/corepack.html):`corepack enable`)
|
|
29
|
+
|
|
30
|
+
## 包管理与发布
|
|
31
|
+
|
|
32
|
+
- 仅使用 **pnpm** 安装依赖;勿提交 `package-lock.json`(已在 `.gitignore` 中忽略)。
|
|
33
|
+
- 发布目标为 **npm** 公共仓库(`publishConfig.registry` 已指向 `https://registry.npmjs.org/`)。
|
|
34
|
+
- **版本与变更记录** 使用 [Changesets](https://github.com/changesets/changesets):
|
|
35
|
+
1. 完成功能或修复后:`pnpm changeset`,按提示选择 semver bump 并写摘要。
|
|
36
|
+
2. 准备发版:`pnpm version-packages`(更新 `package.json` 版本并写入 `CHANGELOG.md`),提交改动。
|
|
37
|
+
3. 发布:`pnpm release`(先 `build`,再 `changeset publish`;`prepublishOnly` 也会保证发布前构建)。
|
|
38
|
+
|
|
39
|
+
首次发包前需在 npm 登录:`npm login`(或 `pnpm publish` 使用的同一 npm 身份)。
|
|
40
|
+
|
|
41
|
+
## 开发与构建
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
pnpm install
|
|
45
|
+
pnpm run build # 产出 dist/
|
|
46
|
+
pnpm run dev # tsup watch
|
|
47
|
+
pnpm run typecheck
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
全局或本地执行:
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
node dist/cli.mjs --help
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
本地全局命令执行
|
|
57
|
+
```bash
|
|
58
|
+
pnpm run build
|
|
59
|
+
pnpm link --global
|
|
60
|
+
fe-kit --help
|
|
61
|
+
|
|
62
|
+
#(用完可 pnpm unlink --global fe-kit 清理)
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## 命令
|
|
66
|
+
|
|
67
|
+
| 命令 | 说明 |
|
|
68
|
+
|------|------|
|
|
69
|
+
| `init` | 交互式初始化 Vue 或 React + TypeScript 项目 |
|
|
70
|
+
| `enhance` | 在已有前端项目中叠加开发工具、skills、MCP、规则等 |
|
|
71
|
+
|
|
72
|
+
## 仓库结构(节选)
|
|
73
|
+
|
|
74
|
+
- `src/` — CLI 源码、模板、规则与内置资源
|
|
75
|
+
- `src/adapters/` — 各编辑器输出适配(Cursor / Claude Code / VS Code / CodeBuddy / Trae / IDEA)
|
|
76
|
+
- `src/rules/` — 内置规则 Markdown 源(按 common / react / vue 分类)
|
|
77
|
+
- `src/skills/` — 技能目录(`catalog.ts` + 各 `<skill>/SKILL.md` 预设模板,构建时拷贝到 `dist/skills/`)
|
|
78
|
+
- `dist/` — 构建产物(发布内容)
|
|
79
|
+
- **`plan/`** — 见下文
|
|
80
|
+
|
|
81
|
+
## `plan/` 目录
|
|
82
|
+
|
|
83
|
+
用于存放**与代码实现解耦**的规划和协作材料,便于长期维护与对齐方向:
|
|
84
|
+
|
|
85
|
+
- **现有方案**:已采纳或正在执行的技术方案、架构决策记录等
|
|
86
|
+
- **后续计划**:路线图、里程碑、待启动功能的概要说明
|
|
87
|
+
- **待办与跟踪**:任务清单、复盘要点、会议结论摘要等
|
|
88
|
+
|
|
89
|
+
建议按主题或时间分子目录或文件命名(例如 `plan/2026-q2-roadmap.md`),避免与 `src/` 内的可执行逻辑混放。该目录不参与 CLI 打包;新增文档无需改构建配置。
|