# @emulsify/cli 中文文档

规范地址：https://npmcn.com/package/%40emulsify/cli/

版本：2\.4\.1
npm 元数据更新时间：2026-08-31T03:28:40.509Z
中文译文更新时间：2026-11-13T16:33:45.379Z
软件包许可：GPL-2\.0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40emulsify/cli
原文对照：https://npmcn.com/package/%40emulsify/cli/?lang=original
项目主页：https://github.com/emulsify-ds/emulsify-cli#readme
源码仓库：https://github.com/emulsify-ds/emulsify-cli

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：228 kB，80 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- Node.js 要求：\>=24
- 运行依赖：10 个
- 首次发布：2021-07-16T22:41:26.855Z
- 最新版本发布：2026-08-31T03:28:40.134Z
- 近 30 天下载量：6418（2026-10-14 至 2026-11-12，npm 官方下载统计）
- 已发布版本数：39（近 12 个月 11 个）

## 中文简介

在Drupal,WordPress,或独立前端构建和使用组件系统.

## 安装

```sh
npm install @emulsify/cli
```

也可以使用：`pnpm add @emulsify/cli`、`yarn add @emulsify/cli`、`bun add @emulsify/cli`

## README

[![Emulsify Design System](https://user-images.githubusercontent.com/409903/170579210-327abcdd-2c98-4922-87bb-36446a4cc013.svg)](https://www.emulsify.info/) ![npm](https://img.shields.io/npm/dm/@emulsify/cli?style=flat-square)

# 放大CLI

在Drupal,WordPress,或独立前端构建和使用组件系统.

## 所需资源

乳化CLI需要节点.js 24或更新.

## 安装

从全球安装 Eulsify CLI [无](https://www.npmjs.com/package/@emulsify/cli)数字 :

```bash
npm install -g @emulsify/cli
```

随时运行当前命令帮助 :

```bash
emulsify
emulsify --help
```

## 快速启动

创建 Drupal 启动项目,安装一个系统,并添加组件 :

```bash
emulsify init "My Theme" ./web/themes/custom --platform drupal
cd ./web/themes/custom/my_theme
emulsify system install
emulsify component list
emulsify component install card
emulsify component create promo-card --directory molecules --type twig
```

内建平台为 `drupal`, (中文(简体) ), `wordpress`,以及 `none`。对于 WordPress 儿童主题,请使用 WordPress 平台和启动器:

```bash
emulsify init "My Theme" ./wp-content/themes --platform wordpress
```

WordPress自动被检测时,Emulsify将孩子主题初始化为被检测的主题目录,例如: `wp-content/themes/my-theme` 或者说 `web/app/themes/my-theme` 为贝德洛克.

创建独立、可分配组件系统,运行 `system create` 任何项目之外或内部。 目标目录创建于 选中的父目录 :

```bash
emulsify system create "My System" --directory ./systems --platform "drupal || wordpress" --git
```

这创造了 `./systems/my-system` 具有有效系统和可变配置, 可安装 `example-card` 储存库文件,a `.gitignore`,并有一个许可证占地者在分发前替换. 除非被推翻,否则其所需的URL元数据将使用明显的、有计划的验证 `https://TODO.invalid/...` 占位符,必须在 出版.

添加 `--dry-run` 以预览规范的目标,每个生成的文件,以及 git 是否在不更改文件系统的情况下初始化 .

当从另一个系统安装的组件演变成 在创建替换前拆卸已配置的系统 :

```bash
emulsify system detach
```

调试只删除 `system` 财务报告和审定财务报表 `variant` 来自 `project.emulsify.json`. 部件、项目资产和缓存系统 仓库留在原地。 运行 `system create` 脚手架 新系统 存储器,然后移动或复制保存的组件到脚手架和 更新 `system.emulsify.json`· ; `system create` 不导入 自动.

交互式终端可以运行 `emulsify component create` 没有参数 通过组件名称、类型和目录提示。 类型拾取器 总是提供Twig, 提供Twig SDC 在 Drupal 项目, 并提供 React and Web 项目时的组件脚手架 `package.json` 声明 `@emulsify/core`当无法选择时,向导解释原因 Twig是唯一合适的选择,它跳过了单项提示. 同样, `emulsify component install` 没有名称显示可用的组件 已安装的系统变体加上安装所有组件的明确选择.

要定制组件脚手架,请将 CLI 的内置模板复制到 工程,然后编辑由此产生的文件 `.cli/templates/`数字 :

```bash
emulsify component eject-templates twig
```

在交互式终端中运行没有类型的命令以选择一个或多个 组件类型。 使用 `--all` 以非交互方式弹出每个类型。 现有 除非 `--force` 通过.

提示仅在标准输入为 TTY 时运行 。 在CI中,脚本和命令 管道或重定向输入,提供所需要所有位置参数和标志; cLI 以可操作错误退出, 而不是等待输入 :

```bash
emulsify init "My Theme" ./web/themes/custom --platform drupal --yes
emulsify system create my-system --directory ./systems --platform none --git
emulsify system create my-system --directory ./systems --platform none --git --dry-run
emulsify system install compound
emulsify component install card --force
# Or install every available component:
emulsify component install --all
emulsify component create promo-card --directory molecules --type twig --force
emulsify component create card --directory molecules --type web-component --tag-name acme-card
emulsify component eject-templates --all
emulsify system detach --yes
```

对于组件安装,请提供组件名称或 `--all`,并使用 `--force` 应替换现有目的地。 构成部分 创建, 提供位置名称加 `--type` 财务报告和审定财务报表 `--directory`,并使用 `--force` 用于替换已生成组件。 现有 `-y, --yes` 表格仍可作为兼容性别名。 明确 `--type` 即使项目检测会隐藏选择, 值也会被尊重 从巫师。 堕落者 `--format default` 财务报告和审定财务报表 `--format sdc` 表单 仍作为别名可供使用 `--type twig` 财务报告和审定财务报表 `--type twig-sdc`, (中文(简体) ), 并分别打印去色警告. Web 组件获得其标记 从组件名称和项目名称; 通过 `--tag-name` 来推翻它, ,包括在非交互运行中导出值无效时. 对于模板弹出,请提供组件类型或 `--all` tTY 外部; 使用 `--dry-run` 预览路径和 `--force` 仅在已有定制时 应替换.

## 文档

详细文件 [文档](https://npmcn.com/package/%40emulsify/cli/docs/README.md)。 。 。 .

| 专题 | 使用此选项时 |
| --- | --- |
| [CLI 参考](https://npmcn.com/package/%40emulsify/cli/docs/cli-reference.md) | 查找命令、别名、选项和示例. |
| [项目初始化](https://npmcn.com/package/%40emulsify/cli/docs/project-initialization.md) | 从启动器创建新的 Emulsify 项目 . |
| [系统](https://npmcn.com/package/%40emulsify/cli/docs/systems.md) | 列出、安装、分解或编写组件系统. |
| [构成部分](https://npmcn.com/package/%40emulsify/cli/docs/components.md) | 列出、安装、干燥或创建组件. |
| [项目配置](https://npmcn.com/package/%40emulsify/cli/docs/configuration.md) | 谅解 `project.emulsify.json`,变体,和结构映射. |
| [组件模板覆盖](https://npmcn.com/package/%40emulsify/cli/docs/component-template-overrides.md) | 弹出和自定义所使用的文件 `emulsify component create`。 。 。 . |
| [钩子 还有缓存](https://npmcn.com/package/%40emulsify/cli/docs/hooks-and-cache.md) | 了解启动钩,系统钩,以及本地寄存器缓存行为. |
| [发展](https://npmcn.com/package/%40emulsify/cli/docs/development.md) | 建立这个寄存器并运行本地检查. |
| [释放](https://npmcn.com/package/%40emulsify/cli/docs/release.md) | 理解CI,语义释出,和npm出版. |

## 命令概览

| 命令 | 别名 | 说明 |
| --- | --- | --- |
| `emulsify init [name] [path]` |  | 从启动器初始化一个 Emulsify 项目 . |
| `emulsify audit [...args]` |  | 运行已安装的项目 Emulsify 核心审计. |
| `emulsify system list` | `emulsify system ls` | 列出可供安装的内置系统. |
| `emulsify system create [name]` |  | 创建一个独立的组件系统寄存器. |
| `emulsify system install [name]` |  | 在当前 Emulsify 项目中安装一个系统. |
| `emulsify system detach` |  | 解开系统并保留项目组件. |
| `emulsify component list` | `emulsify component ls` | 列出从已安装的系统和变体中可用的组件. |
| `emulsify component install [name]` | `emulsify component i [name]` | 从已安装的系统和变体安装一个组件. |
| `emulsify component create [name]` | `emulsify component c [name]` | 在当前 Emulsify 项目中创建本地组件. |
| `emulsify component eject-templates [type]` |  | 将可编辑的内置模板写入当前工程. |
| `emulsify cache clear` |  | 清除本地缓存系统仓库 . |

`emulsify audit` 是一个方便的外表。 项目安装 `@emulsify/core` 软件包仍然是条子的主人 `emulsify-audit` 机器接口 检查 发现 JSON 计划 输出和退出行为. 见 [CLI 参考](https://npmcn.com/package/%40emulsify/cli/docs/cli-reference.md#audit) 财务报告和审定财务报表 [核心审计文件](https://github.com/emulsify-ds/emulsify-core/blob/develop/docs/audit.md)。 。 。 .

## 贡献者

见 [贡献者](https://npmcn.com/package/%40emulsify/cli/docs/contributors.md)。 。 。 .

## 常见问题

### @emulsify/cli 是什么？

在Drupal,WordPress,或独立前端构建和使用组件系统\.

### 如何安装 @emulsify/cli？

在项目目录运行 npm install @emulsify/cli，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 emulsify，可以用 npx emulsify 直接运行。

### @emulsify/cli 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/emulsify\_\_cli 是否存在。

### @emulsify/cli 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @emulsify/cli 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=24。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @emulsify/cli 可以商用吗？

@emulsify/cli 使用 GPL-2\.0 许可。强 Copyleft：分发包含该代码的软件时，整个作品需以兼容的 GPL 许可开源。仅在内部使用、不对外分发时不触发此义务。以上为概括，不构成法律意见，请以许可原文为准。

### @emulsify/cli 的下载量有多少？

根据 npm 官方下载统计，@emulsify/cli 在 2026/10/14 – 2026/11/12 这 30 天内被下载 6,418 次，日均约 214 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @emulsify/cli 还在维护吗？

最新版本 2\.4\.1 发布于 2026/08/31（2 个月前）；至今共发布 39 个版本，其中过去 12 个月发布了 11 个；首次发布于 2021/07/17。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

