# @conformetry/core 中文文档

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

版本：0\.0\.76
npm 元数据更新时间：2026-11-10T14:25:08.334Z
中文译文更新时间：2026-11-10T15:23:09.442Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40conformetry/core
原文对照：https://npmcn.com/package/%40conformetry/core/?lang=original
项目主页：https://github.com/organizzolini/codebase/tree/main/projects/ic-suite/conformetry/conformetry-core#readme
源码仓库：https://github.com/organizzolini/codebase

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

- 包体积（解压后）：33 kB，6 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：2 个
- 首次发布：2026-10-04T22:26:05.227Z
- 最新版本发布：2026-11-10T14:25:07.751Z
- 近 30 天下载量：13550（2026-10-11 至 2026-11-09，npm 官方下载统计）
- 已发布版本数：74（近 12 个月 74 个）

## 中文简介

Conforometer 代码生成和符合性工具链的核心类型和结构合同

## 安装

```sh
npm install @conformetry/core
```

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

## README

# 交错核心

[![npm](https://img.shields.io/npm/v/@conformetry/core?logo=npm&label=npm)](https://www.npmjs.com/package/@conformetry/core)

共享合同彼此 [调和](https://npmcn.com/package/%40conformetry/conformetry-cli/README.md) 软件包正在扩展。 是五层脊椎的叶子 `core <- configuration <- analysis <- output <- cli` 因此它宣布类型和持有 无可执行文件:无服务、无雀巢JS模块、不依赖任何东西 其它的,在图表中。 因此从这里导入结果类型 无所牵引.

```bash
npm install --save-dev @conformetry/core
```

## 它拥有的

| 文件 | 责任 |
| --- | --- |
| `lib/differences.types.ts` | 结构化 `ConformetryDifference` 形状,以及歧视语言和类别联盟 |
| `lib/inventory.types.ts` | 发现什么,因为输出层使它: 模板、实例以及它们之间的配对 |
| `lib/runner.types.ts` | 这个 `ConformetryLanguageValidator` 合同和文件、有效载荷,以及结果形状 |
| `lib/scoring.types.ts` | `InstanceScore`: 匹配实例如何符合匹配模板 |

这些类型的行为描述了他们之上的生命. 区别和得分 原始的,文件存在证,每个格式的验证器都在 [`@conformetry/languages`](https://npmcn.com/package/%40conformetry/conformetry-languages/README.md); 验证符 信封装入 [`@conformetry/validation`](https://npmcn.com/package/%40conformetry/conformetry-validation/README.md)· ; 渲染为 [`@conformetry/output`](https://npmcn.com/package/%40conformetry/conformetry-output/README.md)。 。 。 .

这里的"语言"是指一个文件格式——TypeScript,JSON, (原始内容存档于2018-10-21). Mark down, Python. “插件”一词保留在 Nx 插件中 [`@conformetry/nx`](https://npmcn.com/package/%40conformetry/conformetry-nx/README.md),并被故意不使用 这些.

## 写入语言验证符

验证器提供描述符和单文件比较. 延长 过滤、在文件下组合差异并组装结果 处理一次 `RunnerService` 内 `@conformetry/validation`,所以一种语言 软件包只包含其比较逻辑 :

```ts
@Injectable()
export class ExampleValidatorService implements ConformetryLanguageValidator {
  public readonly descriptor = EXAMPLE_VALIDATOR_DESCRIPTOR;

  public validateDocument(
    document: PreparedValidationDocument,
  ): DocumentValidationResult {
    // compare document.renderedTemplate against document.instance
    return { differences, totalWeight };
  }
}
```

## 重量和分数

一个验证者报告说,模板需要多少,以及它找到多少. `totalWeight` 计算所权衡的每一项要求——符合要求 包括其中,因为不让他们参加只得比 已经错了部分.

每种差异可能包含一个 `weight`,默认为 1. 上面写着多少个 证明人报告缺失 无论它持有多少成员,都曾参加过一次课,因此,它以 " 子树是将一个类从成本中删除到删除 导入。 不需要人均体重表——一个等级的价值更高,因为它 包含更多内容.

```text
score = (totalWeight - sum(difference.weight ?? 1)) / totalWeight
```

`ScoringService`输入 `@conformetry/languages`,拥有算术,包括 两种情况值得纠正一次: 宣布无;和一个空模板,其分母为零 因此,它完全符合.

[`@conformetry/validation`](https://npmcn.com/package/%40conformetry/conformetry-validation/README.md) 驱动 已注册的验证器; 它们从来不负责发现文件或 装入配置.

## 结构差异

分歧沿两侧的位置——实例和模板) 与预期价值和混凝土 `fix`。最后一个字段是: 报告要由任何人或任何方面采取行动 文件符合。 优先充电 `instanceLine`编号 :`templateLine` (或 `instancePath` 用于文档格式)将一个位置折叠到信件中.

## 出口

只有类型 : `ConformetryDifference`, (中文(简体) ), `ConformetryDifferenceLanguage`, (中文(简体) ), `ConformetryDifferenceType`, (中文(简体) ), `ConformetryLanguageValidator`, (中文(简体) ), `DirectoryEntry`, (中文(简体) ), `DocumentValidationResult`, (中文(简体) ), `FileSystemAdapter`, (中文(简体) ), `GeneratorDefinition`, (中文(简体) ), `GeneratorHook`, (中文(简体) ), `GeneratorHookContext`, (中文(简体) ), `GeneratorHooks`, (中文(简体) ), `InstanceScore`, (中文(简体) ), `InventoriedInstance`, (中文(简体) ), `InventoriedPairing`, (中文(简体) ), `InventoriedTemplate`, (中文(简体) ), `LanguageValidatorDescriptor`, (中文(简体) ), `LanguageValidatorResult`, (中文(简体) ), `PreparedValidationDocument`, (中文(简体) ), `PreparedValidationPayload`,以及 `ValidationFileResult`。 。 。 .

## 测试

```bash
nx run conformetry-core:vitest
```

一个测试,它声称这个包裹是叶子的属性: 模块在运行时无贡献, 因此从这里导入结果类型 无法将服务或雀巢JS模块拖入其后方。 导出一个值失败 这个.

## 许可证

麻省理工学院——见 [自由主义](https://npmcn.com/LICENSE)。 。 。 .

## \* 调和

这个项目源于 [巢-服务-项目](https://npmcn.com/configuration/conformetry-templates/nestjs-service-project) 符合模板.

## 常见问题

### @conformetry/core 是什么？

Conforometer 代码生成和符合性工具链的核心类型和结构合同

### 如何安装 @conformetry/core？

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

### @conformetry/core 支持 TypeScript 吗？

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

### @conformetry/core 支持 ESM 还是 CommonJS？

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

### @conformetry/core 可以商用吗？

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

### @conformetry/core 的下载量有多少？

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

### @conformetry/core 还在维护吗？

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

