核心用法
fe-cli 是一个智能路由型脚手架工具,作为 6 种前端项目类型的统一入口(Web SPA、后台管理、移动 H5、Electron 桌面端、SSR、小程序)。用户可通过一句话快速启动(如"初始化 React + Tailwind + Zustand 后台项目 my-admin"),或进入交互模式逐步配置。
类型识别后自动路由至子技能(fe-cli-admin/fe-cli-h5 等),生成类型专属文件的同时,注入标准化共享公共层:
- 工程化配置:Vite + TypeScript + ESLint + Prettier,pnpm 强制锁定
- 请求与日志:原生 fetch 封装(非 axios)、结构化日志系统(分级/轮转/持久化)、日志导出与上报
- 样式体系:Sass (SCSS) + CSS 变量 + design tokens + 响应式断点规范
- 工具库:storage/format/validate 等高频工具函数
- AI 可读文档:自动生成
.ai/PROJECT.md,便于后续 AI 代理快速理解项目
显著优点
1. 标准化与一致性:强制 @/ 路径别名、统一的环境变量文件、Logger.child("Module") 模式,消除团队项目间的配置漂移
2. 技术栈覆盖全面:从 SPA 到 SSR 到小程序,覆盖主流前端场景,技术组合灵活(React/Vue × Tailwind/Ant Design/MUI × Zustand/Redux)
3. 防御性设计:完善的降级策略(网络失败、版本不存在、目录冲突等)、输入澄清机制(矛盾请求、越界请求自动拦截)
4. AI 友好:自动生成结构化的项目文档,降低后续 AI 辅助开发的上下文成本
5. 日志与可观测性:内置生产级日志系统,支持分级、自动清理、导出,弥补多数脚手架的空白
潜在缺点与局限性
- 技术栈锁定:强制 pnpm + Sass + fetch,axios/styled-components 等偏好需手动调整
- Node 版本门槛:目标 Node 18+,老旧环境需升级
- 子技能依赖:核心能力分散在子技能中,单一文件无法完整运行,需配合 fe-cli-* 系列使用
- Electron 特殊处理:主进程需单独 tsc 编译,增加认知负担(文档已明确标注)
- 部署环节缺失:明确拒绝部署相关请求,CI/CD 需额外工具链
适合人群
- 团队技术负责人:需要统一多项目工程规范、降低新人 onboarding 成本
- 全栈开发者:频繁切换 React/Vue/Next.js/Electron 多种项目类型
- AI 辅助开发用户:依赖 AI 代码生成,需要结构化项目上下文
- 中后台/企业级应用开发者:对日志、环境管理、类型安全有硬性要求
常规风险
- 版本漂移风险:模板引用的包版本可能不存在,需关注
references/下模板文件的维护 - pnpm 生态依赖:国内网络环境需配置镜像,否则安装失败率高
- 日志持久化:生产环境日志上报端点为占位符(TBD),需自行接入监控平台
- 覆盖操作风险:目标目录已存在时提供"覆盖"选项,误操作可能导致数据丢失
安全与来源评估
- 来源可信度:T2(GitHub 开源项目,有明确版本号 1.1.0 和主页,但未提供作者身份验证)
- 安全等级:S(纯本地 CLI 工具,无网络请求、无敏感权限、无代码注入风险;生成代码遵循标准开源模式)