# lang-sync-cli

> An automated tool for extracting, translating and replacing multilingual text in frontend projects.

Latest version **0.9.0** (published 2026-08-05) · MIT license · 0 weekly downloads

## Install

```sh
npm install lang-sync-cli
pnpm add lang-sync-cli
yarn add lang-sync-cli
bun add lang-sync-cli
```

Provides the command `zklang`.

## Health

**Score 55/100 (C)** — status: active.

Positive: no vulnerabilities; recently updated; high maintenance score.

Warnings: low downloads; no types; no esm support; pre 1.0.

## Facts

| | |
|---|---|
| Version | 0.9.0 |
| Published | 2026-08-05 |
| First published | 2025-12-04 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Node | >=20.0.0 |
| Dependencies | 15 |
| Unpacked size | 46.2 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | flyfox |
| Maintainers | huzhifu |
| Keywords | i18n, internationalization, vue, automation, translation, migration, i18n migrate, lang migrate, auto migrate, cli, locale, node, lang, scan, pull, replace, check |

## Links

- npm: https://www.npmjs.com/package/lang-sync-cli
- Repository: https://github.com/z-ti/lang-sync-cli
- Homepage: https://github.com/z-ti/lang-sync-cli#readme
- Issues: https://github.com/z-ti/lang-sync-cli/issues
- npm.io page: https://npm.io/package/lang-sync-cli

## Dependencies (15)

- [ora](https://npm.io/package/ora.md) ^5.0.0
- [glob](https://npm.io/package/glob.md) ^13.0.0
- [chalk](https://npm.io/package/chalk.md) ^4.0.0
- [clear](https://npm.io/package/clear.md) ^0.1.0
- [figlet](https://npm.io/package/figlet.md) ^1.5.2
- [inquirer](https://npm.io/package/inquirer.md) ^8.2.2
- [prettier](https://npm.io/package/prettier.md) 2.8.8
- [commander](https://npm.io/package/commander.md) ^2.20.3
- [chalk-pipe](https://npm.io/package/chalk-pipe.md) ^4.0.0
- [@babel/types](https://npm.io/package/@babel/types.md) ^7.28.5
- [@babel/parser](https://npm.io/package/@babel/parser.md) ^7.28.5
- [@babel/traverse](https://npm.io/package/@babel/traverse.md) ^7.28.5
- [@babel/generator](https://npm.io/package/@babel/generator.md) ^7.28.5
- [@vue/compiler-sfc](https://npm.io/package/@vue/compiler-sfc.md) ^3.5.25
- [bing-translate-api](https://npm.io/package/bing-translate-api.md) ^4.2.0

## Alternatives

- [messageformat](https://npm.io/package/messageformat.md) — 329.7K weekly downloads
- [@mintlify/scraping](https://npm.io/package/@mintlify/scraping.md) — 294.8K weekly downloads
- [@mintlify/previewing](https://npm.io/package/@mintlify/previewing.md) — 209.5K weekly downloads
- [@mintlify/prebuild](https://npm.io/package/@mintlify/prebuild.md) — 209.5K weekly downloads
- [@mintlify/link-rot](https://npm.io/package/@mintlify/link-rot.md) — 206.3K weekly downloads

## Recent versions

- 0.9.0 (latest) — 2026-08-05
- 0.8.9 — 2026-05-22
- 0.8.8 — 2026-02-10
- 0.8.7 — 2026-01-26
- 0.8.6 — 2026-01-19
- 0.8.5 — 2026-01-13
- 0.8.4 — 2026-01-12
- 0.8.3 — 2026-01-12
- 0.8.2 — 2026-01-08
- 0.8.1 — 2026-01-08
- 0.8.0 — 2026-01-08
- 0.7.3 — 2026-01-08
- 0.7.2 — 2026-01-08
- 0.7.1 — 2026-01-07
- 0.7.0 — 2026-01-07
- … 21 more at https://npm.io/package/lang-sync-cli/versions

## README

# lang-sync-cli

[![npm](https://img.shields.io/npm/v/lang-sync-cli.svg)](https://www.npmjs.com/package/lang-sync-cli)
[![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/z-ti/lang-sync-cli/blob/main/LICENSE)

## 功能简介

**lang-sync-cli** 是一个前端多语言自动化工具，专为现代化前端项目国际化改造而设计。它通过中文词条提取、在线协作翻译、智能代码替换和后期维护检查，大幅降低多语言开发成本，提升团队协作效率。

## 核心特性

- **中文词条提取** - 自动扫描项目文件，精准提取中文文本和符号
- **在线协作翻译** - 无缝对接飞书在线文档，支持多人实时协作
- **智能代码替换** - 自动将中文替换为国际化函数调用，并补全相关依赖
- **翻译完整性检查** - 确保项目中没有遗漏的未翻译文本

## 安装

```bash
npm install -g lang-sync-cli
# 或
yarn global add lang-sync-cli
# 或
pnpm add -g lang-sync-cli
```

## 快速开始

### 1. 初始化配置

```bash
zklang init
```

首次使用时运行此命令，引导式配置飞书应用和文档等基本信息。

### 2. 扫描提取中文词条

```bash
zklang scan
# 或完整命令：zklang syncZhToOnlineDoc

zklang scan <sheetName>
# 可指定扫描后要上传的表格名, 若缺省默认从配置取

zklang scan -k <prefix.>
# 可指定上传的表格里sheet页中列key的前缀, 若缺省默认从配置取
```

扫描项目中的所有 Vue/JS/TS 文件，提取中文文本并自动写入飞书在线表格，方便翻译团队协作。

### 3. 拉取翻译数据并生成语言文件

```bash
zklang pull
# 或完整命令：zklang pullExcelGenerateLangFile

zklang pull <sheetName>
# 可指定要拉取数据的目标表格名, 若缺省默认从配置取
```

从飞书在线表格拉取已翻译的多语言数据，自动生成本地语言文件（如 zh-CN.json, en.json 等）。

### 4. 智能替换代码中的中文文本

```bash
zklang replace
# 或完整命令：zklang replaceFilesByLangData
```

自动将项目中的中文文本替换为 t('key') 函数调用，补全相关依赖并处理代码格式，保持代码整洁。

### 5. 检查翻译完整性

```bash
zklang check
# 或完整命令：zklang translationCheck
```

扫描项目，检测是否有遗漏的未翻译文本，确保多语言覆盖完整。

### 6. 查看帮助

```bash
zklang help
```

查看所有可用命令的详细说明。

## 使用场景

### 1. 大型项目(老项目)从零接入多语言

```bash
# 1. 初始化配置
zklang init

# 2. 扫描现有中文词条到飞书文档
zklang scan

# 3. 等待翻译团队完成翻译后拉取数据
zklang pull

# 4. 自动替换代码中的中文
zklang replace

# 5. 检查是否有遗漏
zklang check
```

### 2. 已有国际化项目维护

```bash
# 1. 扫描新增的中文词条
zklang scan

# 2. 拉取最新的翻译数据
zklang pull

# 3. 替换新增的中文文本
zklang replace
```

### 3. 翻译完成后更新

```bash
# 翻译人员在飞书表格里填充和完善翻译信息之后
zklang pull
```

## 飞书和翻译集成

- 1.创建飞书电子表格作为翻译协作平台，并开通相关权限
- 2.表格在数据上传后会自动生成以下列：`key`, `中文简体(zh-CN)`, `英语(en)` 等
- 3.通过 `zklang init` 配置飞书 ID/秘钥 、工作表和翻译账号(如需翻译)等信息

## 项目结构

```text
your-project/
├── src/
│   ├── lang/
│   │   ├── zh-CN.json    # 自动生成的中文简体语言文件
│   │   ├── en.json       # 自动生成的英语语言文件
│   │   ├── ...json       # 自动生成的其他语言文件
│   │   └── index.js    # 语言文件导出
└── package.json
```

## 常见问题

### Q: 支持哪些前端框架？

A: 支持 Vue 2/3，使用 Webpack 或 Vite 构建的 JavaScript/TypeScript 的项目。

### Q: 是否会替换注释和 console 里的中文文本？

A: 不会。在扫描提取，替换等环节都会忽略掉单行注释、多行注释、HTML 注释、console 里的中文汉字和符号。

### Q: 飞书文档是必须的吗？

A: 是的，目前主要支持飞书在线表格作为翻译协作平台。

### Q: 是否支持多语种的自动翻译？

A: 是的，可以通过配置使用百度翻译或 Bing 翻译进行多语种自动翻译，也支持纯人工翻译模式。

### Q: 现在已经有强大的 AI 工具 (Cursor/Claude Code), 还需要这个自动化工具吗？

A: 确实，AI 工具在在代码理解和生成方面非常强大。然而，对于老项目从零开始的国际化改造这类系统化工程：使用 AI 工具需多次沟通调整提示词、翻译和文档协作需要找到对应的 MCP 进行对接、输出结果可能存在不一致
性、批量生成后需要更多的人工复查和修复、每个项目都需要重新沟通和调整、难以确保团队产出一致等缺点。相比之下，`lang-sync-cli`作为专用工具在效率、一致性、集成度和易用性方面有明显优势。此外
，`lang-sync-cli` 与 AI 工具比也有改造耗时更少(大项目几分钟完成改造)、不收集上传代码更安全、零成本不付费上班等独特优势。

## 优化建议

有任何问题或建议，请点击这里 [Issue Report](https://github.com/z-ti/lang-sync-cli/issues)

## 许可证

MIT © 2025-present flyfox  
完整协议见 [MIT](https://github.com/z-ti/lang-sync-cli/blob/master/LICENSE) 文件

---
_Source: https://npm.io/package/lang-sync-cli · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
