eliteforge-frontend-generator
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseEliteForge 前端生成器
EliteForge 前端生成器
Overview
概述
Generate frontend projects with deterministic rules from the online generator app.
Use the bundled script to produce a dry-run payload/command preview or run project creation directly.
Project name is mandatory: .
fe-<company_name>-<product_name>-<service_name>根据在线生成器应用的确定性规则生成前端项目。使用捆绑脚本生成预演(dry-run)负载/命令预览,或直接运行项目创建。项目名称为必填项,格式为:。
fe-<company_name>-<product_name>-<service_name>Package Manager Policy
包管理器策略
- Treat as the only package manager for generated frontend projects.
pnpm - After project generation, always initialize dependencies with inside the generated project directory.
pnpm i - Do not replace with
pnpm i,npm install, oryarn.pnpm install
- 将作为生成的前端项目的唯一包管理器。
pnpm - 项目生成完成后,务必在生成的项目目录内执行初始化依赖。
pnpm i - 不得将替换为
pnpm i、npm install或yarn。pnpm install
Project Naming Policy
项目命名策略
- Always pass to scaffold CLI as
project_name.fe-<company_slug>-<product_slug>-<service_slug> - Never drop the prefix.
fe- - Never append project-type suffixes such as ,
-app, or-ui.-sdk
- 必须以的格式将
fe-<company_slug>-<product_slug>-<service_slug>传入搭建CLI。project_name - 切勿省略前缀。
fe- - 切勿添加、
-app或-ui等项目类型后缀。-sdk
Mandatory Input Policy
必填输入策略
- Treat ,
project_type,company_name, andproduct_nameas required and user-provided only.service_name - Never infer required fields from repository name, current directory, previous conversation values, defaults, or examples.
- If any required field is missing, stop and ask only for missing fields first.
- Do not run dry-run or generation before all required fields are explicitly provided by the user.
- If user input is ambiguous (for example "same as before" or "use default"), ask for explicit values.
- 将、
project_type、company_name和product_name视为必填项,且必须由用户提供。service_name - 切勿从仓库名称、当前目录、历史对话内容、默认值或示例中推断必填字段。
- 若存在缺失的必填字段,需先暂停操作,仅询问缺失的字段。
- 在所有必填字段由用户明确提供前,不得执行预演或生成操作。
- 若用户输入模糊(例如“和之前一样”或“使用默认值”),需请求用户提供明确值。
Inputs
输入字段
Collect the following fields.
Required (must come from the user message):
- :
project_type,frontend_app, orfrontend_uifrontend_sdk - : kebab-case
company_name - : kebab-case
product_name - : kebab-case
service_name
Optional:
- : default
cli_nameonebase-cli - : default current working directory
output_dir - : default
auto_slugify; use only when the user explicitly asks to convert non-kebab namesfalse
收集以下字段:
必填项(必须来自用户消息):
- :
project_type、frontend_app或frontend_uifrontend_sdk - :短横线命名法(kebab-case)
company_name - :短横线命名法(kebab-case)
product_name - :短横线命名法(kebab-case)
service_name
可选项:
- :默认值为
cli_nameonebase-cli - :默认值为当前工作目录
output_dir - :默认值为
auto_slugify;仅当用户明确要求转换非短横线命名格式时使用false
Workflow
工作流程
- Collect required fields only from explicit user input.
- If required fields are missing, ask only for the missing fields and wait for user response.
- Validate naming fields as kebab-case.
- If naming is invalid and is not explicitly requested, ask the user to provide kebab-case values.
auto_slugify - Run dry-run first to show payload and command.
- Verify dry-run command uses .
-p fe-<company_slug>-<product_slug>-<service_slug> - Execute the create command.
- Change to generated project directory and run .
pnpm i - Confirm generated folder exists and initialization completed.
Read references/frontend-generation-logic.md when the user asks why a template or project name is chosen.
- 仅从用户明确输入中收集必填字段。
- 若存在缺失的必填字段,仅询问缺失字段并等待用户回复。
- 验证命名字段是否符合短横线命名法(kebab-case)。
- 若命名格式无效且未明确请求,请用户提供符合短横线命名法的值。
auto_slugify - 先执行预演(dry-run)以展示负载和命令。
- 确认预演命令使用格式。
-p fe-<company_slug>-<product_slug>-<service_slug> - 执行创建命令。
- 切换到生成的项目目录并执行。
pnpm i - 确认生成的文件夹存在且初始化完成。
当用户询问为何选择某模板或项目名称时,请查阅references/frontend-generation-logic.md。
Commands
命令
Dry-run:
bash
python3 scripts/create_frontend_project.py \
--project-type frontend_app \
--company-name cisdigital \
--product-name your-product \
--service-name your-service \
--dry-runGenerate :
frontend_appbash
python3 scripts/create_frontend_project.py \
--project-type frontend_app \
--company-name cisdigital \
--product-name your-product \
--service-name your-service
cd fe-cisdigital-your-product-your-service
pnpm iGenerate :
frontend_uibash
python3 scripts/create_frontend_project.py \
--project-type frontend_ui \
--company-name cisdigital \
--product-name your-product \
--service-name your-component
cd fe-cisdigital-your-product-your-component
pnpm iGenerate :
frontend_sdkbash
python3 scripts/create_frontend_project.py \
--project-type frontend_sdk \
--company-name cisdigital \
--product-name your-product \
--service-name your-jsdk
cd fe-cisdigital-your-product-your-jsdk
pnpm iUse custom CLI or output directory:
bash
python3 scripts/create_frontend_project.py \
--project-type frontend_app \
--company-name cisdigital \
--product-name your-product \
--service-name your-service \
--cli-name onebase-cli \
--output-dir /path/to/workspace
cd /path/to/workspace/fe-cisdigital-your-product-your-service
pnpm iConvert non-kebab input (only when user explicitly requests conversion):
bash
python3 scripts/create_frontend_project.py \
--project-type frontend_app \
--company-name "CIS Digital" \
--product-name "My Product" \
--service-name "Portal UI" \
--auto-slugify \
--dry-run预演(dry-run):
bash
python3 scripts/create_frontend_project.py \
--project-type frontend_app \
--company-name cisdigital \
--product-name your-product \
--service-name your-service \
--dry-run生成:
frontend_appbash
python3 scripts/create_frontend_project.py \
--project-type frontend_app \
--company-name cisdigital \
--product-name your-product \
--service-name your-service
cd fe-cisdigital-your-product-your-service
pnpm i生成:
frontend_uibash
python3 scripts/create_frontend_project.py \
--project-type frontend_ui \
--company-name cisdigital \
--product-name your-product \
--service-name your-component
cd fe-cisdigital-your-product-your-component
pnpm i生成:
frontend_sdkbash
python3 scripts/create_frontend_project.py \
--project-type frontend_sdk \
--company-name cisdigital \
--product-name your-product \
--service-name your-jsdk
cd fe-cisdigital-your-product-your-jsdk
pnpm i使用自定义CLI或输出目录:
bash
python3 scripts/create_frontend_project.py \
--project-type frontend_app \
--company-name cisdigital \
--product-name your-product \
--service-name your-service \
--cli-name onebase-cli \
--output-dir /path/to/workspace
cd /path/to/workspace/fe-cisdigital-your-product-your-service
pnpm i转换非短横线命名格式(仅当用户明确请求转换时使用):
bash
python3 scripts/create_frontend_project.py \
--project-type frontend_app \
--company-name "CIS Digital" \
--product-name "My Product" \
--service-name "Portal UI" \
--auto-slugify \
--dry-runNotes
注意事项
- exists in the form data but does not affect template selection in current generator logic.
frontend_project_type - The script blocks generation if target project directory already exists.
- Always initialize generated projects with .
pnpm i - Generated project directory name is exactly .
fe-<company_slug>-<product_slug>-<service_slug> - Keep output concise: return generated directory, create command, and result.
pnpm i - Never guess or fill missing required fields on behalf of the user.
- 存在于表单数据中,但在当前生成器逻辑中不影响模板选择。
frontend_project_type - 若目标项目目录已存在,脚本将阻止生成操作。
- 务必使用初始化生成的项目。
pnpm i - 生成的项目目录名称严格为。
fe-<company_slug>-<product_slug>-<service_slug> - 输出内容需简洁:返回生成的目录、创建命令以及的执行结果。
pnpm i - 切勿猜测或替用户补充缺失的必填字段。