# @cooklang/cooklang 中文文档

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

版本：0\.19\.1
npm 元数据更新时间：2026-10-15T12:26:46.718Z
中文译文更新时间：2026-11-10T18:10:46.517Z
软件包许可：MIT

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

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

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

- 包体积（解压后）：1.2 MB，12 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：0 个
- 首次发布：2025-11-23T20:31:37.977Z
- 最新版本发布：2026-10-15T12:26:45.619Z
- 近 30 天下载量：5888（2026-10-11 至 2026-11-09，npm 官方下载统计）
- 已发布版本数：4（近 12 个月 4 个）

## 中文简介

官方 Cooklang 解析器 - 用于高性能配方解析的 Rust 动力 WASM 执行

## 安装

```sh
npm install @cooklang/cooklang
```

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

## README

# @ cooklang/ cooklang (英语)

公务 [库克朗](https://cooklang.org/) javaScript 和 TypeScript 的解析器.

这是一个高性能的WASM执行 由Rust提供动力 [厨师](https://github.com/cooklang/cooklang-rs) par. 它提供快速,可靠的食谱解析,并全力支持Cooklang规格.

## 安装

```bash
npm install @cooklang/cooklang
```

## 快速启动

```typescript
import { Parser } from '@cooklang/cooklang';

const parser = new Parser();
const recipe = parser.parse(`
>> servings: 4

Add @salt and @pepper to taste.
Cook for ~{10%minutes}.
`);

console.log(recipe.sections[0].content);
```

## 为什么?

这个软件包使用WebAssembly来获取几个关键好处:

-   **业绩**: 本地速度解析,明显快于纯 JavaScript
-   **可靠性**: 与官方 Rust 解析器共享执行意味着跨平台的一致行为
-   **可维持性**: Cooklang 光谱的修改在 Rust 中执行一次, 在此自动可用

## 从@cooklang/cooklang-ts迁移

如果您是从上一个类型迁移到本地 `@cooklang/cooklang-ts` 软件包(v1.x),请参见 [移徙指南](https://npmcn.com/package/%40cooklang/cooklang/MIGRATION.md)。 。 。 .

**关键差异 :**

-   不同的软件包名称 : `@cooklang/cooklang-ts` → `@cooklang/cooklang`
-   API 更改 : WASM 执行有不同的 API 表面
-   版本编号: 此软件包跟踪 Rust 核心版本( 目前为 0. 17. x)

## API 参考

### 解析器

```typescript
import { Parser } from '@cooklang/cooklang';

const parser = new Parser();
const recipe = parser.parse(recipeText);
```

### 食谱结构

解析的食谱包括:

```typescript
interface Recipe {
  sections: Section[];
  metadata: Record<string, string>;
  ingredients: Ingredient[];
  cookware: Cookware[];
  timers: Timer[];
}
```

### 帮助函数

```typescript
import {
  ingredient_should_be_listed,
  ingredient_display_name,
  cookware_should_be_listed,
  cookware_display_name,
  quantity_display,
  grouped_quantity_display,
  grouped_quantity_is_empty
} from '@cooklang/cooklang';
```

### 提取值

处理数量的工具功能:

```typescript
import { getNumericValue, extractNumericRange } from '@cooklang/cooklang';

const value = ingredient.quantity?.value;
const numeric = getNumericValue(value); // 2.5
const range = extractNumericRange(value); // { start: 2, end: 3 }
```

## 版本同步

此软件包版本跟踪 Rust `cooklang-rs` 版本。 例如:

-   无 `@cooklang/cooklang@0.17.2` = 粗鲁 `cooklang-rs@0.17.2`

我们使用 0.x 版本来匹配 Rust 核心库. 剖析器已做好生产准备并积极维护. 当Rust核心达到1.0时,我们会撞到1.0.

## 浏览器支持

这个软件包在 :

-   节点.js 16+
-   现代浏览器(Chrome,Firefox,Safari,边缘)
-   Bundlers (Webpack, Vite, Rollup等) (中文(简体) )

## 捐款

此软件包是 [厨师](https://github.com/cooklang/cooklang-rs) 单相机 欢迎捐款!

## 许可证

麻省理工学院 - 看 [自由主义](https://npmcn.com/package/%40cooklang/LICENSE)

## 链接

-   [Cooklang 规格](https://cooklang.org/docs/spec/)
-   [库克朗网站](https://cooklang.org/)
-   [GitHub 仓库](https://github.com/cooklang/cooklang-rs)
-   [问题跟踪器](https://github.com/cooklang/cooklang-rs/issues)

## 常见问题

### @cooklang/cooklang 是什么？

官方 Cooklang 解析器 - 用于高性能配方解析的 Rust 动力 WASM 执行

### 如何安装 @cooklang/cooklang？

在项目目录运行 npm install @cooklang/cooklang，或使用 pnpm add / yarn add / bun add。

### @cooklang/cooklang 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @cooklang/cooklang 支持 ESM 还是 CommonJS？

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

### @cooklang/cooklang 可以商用吗？

@cooklang/cooklang 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @cooklang/cooklang 的下载量有多少？

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

### @cooklang/cooklang 还在维护吗？

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

