阿拉丁·前端工程工坊把「前端只会写页面、规范停在文档里、脚手架手敲、构建靠抄、性能靠猜、可访问性靠忘」从「手动搭项目、抄配置、肉眼查规范」升级成一条本地工具链——多框架脚手架生成(React/Vue3/Svelte + Vite)、可复用组件生成(Props 类型+样式+示例)、规范落地检查(lint-lite:命名/未用变量/console残留/TS any/目录结构)、构建配置生成与产物体积预算、性能审计(依赖体积/重复/懒加载/Lighthouse 清单)、可访问性(a11y)校验(alt/aria
================================================================================是一项面向实际任务的技能。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;
涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
阿拉丁出品。你用 aladin-code-pilot 把函数审了、api-pilot 把接口验了、sql-forge 把库建了、diagram-forge 把图画了、cicd-forge 把服务部署了、secure-forge 把安全扫了、observability-forge 把监控加了、doc-forge 把文档出了——但前端呢? 页面还是手敲、脚手架还是从零搭、规范停在 frontend-spec 的文档里、构建配置靠抄、性能靠猜、可访问性靠忘。skillhub 上能找到的"前端向"技能全是单点:要么只写前端开发规范文本(frontend-spec)、要么只出视觉 UI 设计稿(ui-new)、要么只做云部署(cloudbase),没有任何技能把"前端工程化"整条链路工程化。这个技能把前端收口成一套纯本地工具:你给项目路径或一份 IR,它产出脚手架 + 组件 + 构建配置,并把规范/性能/可访问性在本地先校验一遍。
开发者在 skillhub 上能找到的"前端向"工具都是单点:
| 现有飙升/常见技能 | 只做 | 不做 |
|---|---|---|
| 前端开发规范 frontend-spec(趋势 dev #8,6100 下载) | 写前端编码规范/约定文本 | 不生成代码/脚手架、不校验、不跑构建 |
| UI 设计 Skill ui-new(design-media,7632) | 生成视觉 UI 设计稿/组件图 | 不落地工程代码、不做 lint/构建/性能/a11y |
| cloudbase | 腾讯云部署(绑一家厂商) | 不生成前端工程、不校验质量 |
| 微信小程序 wxa-skills-* | 小程序原子接口生成/评测 | 只小程序一端、不通用前端工程 |
本技能 = 前端工程化全链路,脚本零依赖、纯本地、离线可用,且与自家 aladin 工程链互补。
| 能力 | frontend-spec | ui-new | cloudbase | 阿拉丁·前端工程工坊(本款) |
|---|---|---|---|---|
| 生成可运行脚手架 | ❌ | ❌ | ❌(只部署) | ✅ React/Vue3/Svelte + Vite |
| 组件生成(Props/样式/示例) | ❌ | 只视觉稿 | ❌ | ✅ 可复用组件 + 类型 + 示例 |
| 规范落地检查(lint-lite) | 只文本 | ❌ | ❌ | ✅ 命名/未用/console/TS any/结构 |
| 构建配置生成+体积预算 | ❌ | ❌ | 部分 | ✅ Vite/Webpack + 代码分割/压缩/预算 |
| 性能审计 | ❌ | ❌ | ❌ | ✅ 依赖体积/重复/懒加载/Lighthouse |
| 可访问性(a11y)校验 | ❌ | ❌ | ❌ | ✅ alt/aria/语义/键盘可达 |
| 组件文档生成 | ❌ | ❌ | ❌ | ✅ Markdown(联动 doc-forge) |
| 多框架适配 | ❌ | ❌ | ❌ | ✅ React/Vue/Svelte 模板+互转 |
| 离线 / 零依赖 | 部分 | 部分 | ❌(云) | ✅ 纯标准库 |
| 联动 aladin 工程链 | ❌ | ❌ | ❌ | ✅ 接 code-pilot/secure-forge/doc-forge/cicd-forge |
与自家 aladin 系列的关系:code-pilot 审函数、api-pilot 验接口、sql-forge 管存储、diagram-forge 画结构、cicd-forge 管交付、secure-forge 管安全、observability-forge 管观测、doc-forge 管文档,frontend-forge 管"把以上后端能力接到用户看得见的前端"——覆盖「后端能力 → 前端工程化 → 交付」完整闭环(全栈工程化)。
fe_build.py scaffold 生成 React/Vue3/Svelte + Vite 项目骨架(package.json、目录结构、入口、路由占位、状态管理占位、ESLint/TS 严格配置)。fe_build.py component 生成可复用组件(函数组件/组合式 API)、Props 类型、样式(CSS Modules/Tailwind)、示例用法、可选测试占位。fe_build.py lint 对照企业级前端规范做静态检查——命名规范、未用变量、console 残留、TS any、大文件、目录结构、硬编码密钥/URL。fe_build.py config 生成 Vite/Webpack 配置,含代码分割、Tree-shaking、压缩、环境变量、Proxy、alias,并做产物体积预算校验。fe_build.py perf 基于依赖/源码启发式,识别大依赖、重复依赖、缺失懒加载,并生成 Lighthouse 检查清单。fe_build.py a11y 扫描 JSX/模板,检查 alt/aria/语义标签/表单 label/键盘可达/对比度提示。① 扫描归一 fe_ingest.py scan --path ./repo --out fe_ir.json
(或 Hy3 直接产出 fe_ir.json,跳过此步)
② 生成+校验 fe_build.py scaffold --framework react --name myapp --out ./out
fe_build.py component --name Button --framework react --props "label:string;disabled:boolean" --out ./out
fe_build.py config --framework react --out ./out
fe_build.py lint --path ./out
fe_build.py a11y --path ./out
fe_build.py perf --ir fe_ir.json
③ 汇总 fe_report.py report --ir fe_ir.json --dir ./out --html index.html --md index.md
脚本零依赖,直接用托管 Python 运行(无需 pip install):
PY="C:/Users/adam/.workbuddy/binaries/python/versions/3.13.12/python.exe" SK="aladin-frontend-forge" # ① 扫描现项目 → fe_ir.json(或从 sample 起步) "$PY" $SK/scripts/fe_ingest.py scan --path ./my_repo --out fe_ir.json # ② 生成脚手架 + 组件 + 构建配置 "$PY" $SK/scripts/fe_build.py scaffold --framework react --name myapp --out ./out "$PY" $SK/scripts/fe_build.py component --name Button --framework react --props "label:string;disabled:boolean" --out ./out "$PY" $SK/scripts/fe_build.py config --framework react --out ./out # ② 校验:规范 / 可访问性 / 性能 "$PY" $SK/scripts/fe_build.py lint --path ./out "$PY" $SK/scripts/fe_build.py a11y --path ./out "$PY" $SK/scripts/fe_build.py perf --ir fe_ir.json # ③ 汇总为 HTML 看板 + MD 报告 "$PY" $SK/scripts/fe_report.py report --ir fe_ir.json --dir ./out --html index.html --md index.md
自然语言描述:让 Hy3 按
references/usage-examples.md的 IR 模板把"项目名/框架/依赖/页面"落成fe_ir.json,再跑 ② 即可,无需手敲任何配置。
{
"project": { "name": "myapp", "framework": "react", "buildTool": "vite", "usesTS": true },
"deps": { "react": "^18.3.1", "react-dom": "^18.3.1", "vue": null, "svelte": null },
"pages": [
{ "name": "Home", "route": "/", "components": ["Button","Card"] }
],
"components": [
{ "name": "Button", "framework": "react", "props": [
{ "name": "label", "type": "string", "required": true },
{ "name": "disabled", "type": "boolean", "required": false }
], "style": "css-modules", "example": true }
],
"checks": { "lint": true, "a11y": true, "perf": true },
"summary": { "estimatedBundleKB": 180, "budgetKB": 200 }
}
输入:
scan --path,自动探测框架/构建工具/TS/依赖/结构)fe_ir.json(Hy3 落成 / 手写,结构见上)--framework(react/vue/svelte)、--props(组件属性)、--budgetKB(体积预算)输出:
fe_ir.json:统一中间表示(中间产物)out/:生成的脚手架/组件/构建配置代码文件out/quality.json:lint-lite 结果(问题清单+严重度)out/a11y.json:可访问性问题清单out/perf.json:性能审计(大依赖/重复/懒加载建议/Lighthouse 清单)out/components.md:组件文档index.html:自包含 HTML 看板index.md:Markdown 报告索引输出位置: 由 --out / --dir 参数指定,默认当前目录。
能做:
不能做:
AKIA/sk-/http:// 内联),建议提交前 git diff 确认。sed/覆写你的源码文件,检查报告仅为文本清单。| 文件 | 用途 | 加载时机 |
|---|---|---|
references/framework-templates.md |
React/Vue3/Svelte 脚手架与组件模板 | 生成脚手架/组件时 |
references/lint-rules.md |
前端静态检查规则与严重度 | 跑 lint-lite 时 |
references/perf-a11y-guide.md |
性能审计维度 + a11y 检查清单 | 跑性能/a11y 时 |
references/usage-examples.md |
3 个完整场景 + IR 模板 + FAQ | 首次使用 / 排错时 |