# @effect-ts/core 中文文档

规范地址：https://npmcn.com/package/%40effect-ts/core/

版本：0\.60\.5
npm 元数据更新时间：2023-01-19T11:01:27.792Z
中文译文更新时间：2026-11-13T08:14:53.668Z
软件包许可：MIT

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

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

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

- 包体积（解压后）：2.5 MB，2446 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：未声明
- 运行依赖：1 个
- 首次发布：2020-08-20T21:30:30.119Z
- 最新版本发布：2022-12-21T14:52:44.492Z
- 近 30 天下载量：439232（2026-10-13 至 2026-11-11，npm 官方下载统计）
- 已发布版本数：500（近 12 个月 0 个）

## 中文简介

Effect-TS是一套零依赖的库,用于在规模上写出高效,纯功能性的TypeScript.

## 安装

```sh
npm install @effect-ts/core
```

也可以使用：`pnpm add @effect-ts/core`、`yarn add @effect-ts/core`、`bun add @effect-ts/core`

## README

## 欢迎使用 Effect-TS

Effect-TS是一套零依赖的库,用于在规模上写出高效,纯功能性的TypeScript.

灵感的主要驱动力 和大部分思想的来源 由这个图书馆 礼貌地借用是核心 [齐奥](https://github.com/zio/zio) 及其图书馆的生态系统,特别是 [ZIO 预奏](https://github.com/zio/zio-prelude) 我们从中取出一个非常创新的类型类系统的命名和设计.

在TypeScript生态系统内,此库从 [fp - ts (英语)](https://github.com/gcanti/fp-ts), (中文(简体) ), [io-ts(双胞胎)](https://github.com/gcanti/fp-ts), (中文(简体) ), [形态图](https://github.com/sledorze/morphic-ts), (中文(简体) ), [波导](https://github.com/rzeigler/waveguide), (中文(简体) ), [秋晓](https://github.com/tusharmath/qio) 请原谅我们,如果我们忘了一些.

在此之前,我们要感谢所有书库的撰稿人和作者,没有你,这项工作是不可能完成的!

碞钩 `ZIO` 在scala中,它被用作打字口的源代码参考, `@effect-ts/core/Effect` 由高度可伸缩、非阻塞的纤维提供动力,这些纤维从来不会浪费或泄漏资源, `Effect` 让您建立可扩展、有弹性和反应性的应用程序,满足您的业务需求.

-   **高性能**。构建可扩展的应用程序,其性能比 `Promise`。 。 。 .
-   **类型安全**。使用 TypeScript 编译器的全部功率在编译时捕获错误.
-   **同时**轻松地建立并行的应用程序,而不陷入僵局、种族条件或复杂.
-   **同步**。写顺序代码,无论它是同步还是同步.
-   **资源安全**构建永不泄露资源的应用程序,即使它们失败了.
-   **可测试**输入测试服务,用于快速、确定性和类型安全测试.
-   **耐受性**。构建永不出错的应用程序,这些应用程序应对本地和灵活的失败.
-   **职能**迅速从简单的构件构筑出解决复杂问题的办法.
-   **堆叠安全**忘记再次看到 `Maximum call stack size exceeded` 和利润.

在包的生态系统中,你会发现:

-   `@effect-ts/core` 库的主要切入点,包含效果系统,由zio-prelude所启发的类型类以及一组常用模块,如 `Sync`, (中文(简体) ), `Array`, (中文(简体) ), `Option`还有更多.
    
-   `@effect-ts/jest` 测试的主要切入点,提供一个集成点,以嘲笑基于支持管理效果层的测试运行时间 `Effect` 作为头等公民.
    
-   `@effect-ts/monocle` 基于一个叉子 `monocle-ts` 这个库为您的需要提供低锅炉平板光学.
    
-   `@effect-ts/morphic` 基于一个叉子 `morphic-ts` 此库提供了常见类型类的衍生, 如 `Decoder`, (中文(简体) ), `Encoder`, (中文(简体) ), `Guard` 以高度可塑的方式和公用事业 `ADT` 在一般数据模型方面的需求.
    
-   `@effect-ts/tracing-plugin` 此打字器编译插件, 用于 `ttypescript`,可以配置为:
    
    -   在应用程序代码中添加编译时间痕迹
    -   将呼叫减少到 `pipe`
    -   将呼叫减少到 `flow`
    -   将呼叫减少到 `identity`
    -   优化数据最末端可通管功能至数据第一

## 安装

我们建议使用 `yarn` 如果您有多个软件包,则使用 `yarn workspaces` 以默认挂起依赖关系的方式处理 :

```sh
yarn add @effect-ts/core
```

## 保持联系

以不和方式加入我们 : [https://discord.gg/hdt7t7jpvn (中文(简体) )](https://discord.gg/hdt7t7jpvn)

## 文章

如果你更想知道 我们不完全的系列文章

-   [在 TS4.1 中编码 HKTs](https://dev.to/matechs/encoding-hkts-in-ts4-1-1fn2)
-   [Effect-TS 核心: ZIO- Precus 被启发类型和模块结构](https://dev.to/matechs/effect-ts-core-zio-prelude-inspired-typeclasses-module-structure-50g6)
-   [效果数据类型:效果](https://dev.to/matechs/the-effect-data-types-effect-1e3f)
-   [效果数据类型: 管理层( L)](https://dev.to/matechs/the-effect-data-types-managed-layer-4722)
-   [滥用类型脚本生成器](https://dev.to/matechs/abusing-typescript-generators-4m5h)

## 文档

这不是一个借口,我们将在积极发展放慢时写出文件,但:

功能图书馆往往几乎没有文件,原因是一个函数的最佳文件是它自己的定义,假设名称有意义,类型也清晰.

出于上述原因,当我们开始记录它时,它将遵循指南的思路,以便引入库中使用的概念,而不仅仅是一个"函数定义在线数据库"

## 实例

-   AWS Lambda 设置 : [https://github.com/Matechs-Garage/effect-ts-lambda (英语)](https://github.com/Matechs-Garage/effect-ts-lambda)

## 维护者

这个图书馆由Matechs-Garage公司积极维护 `R&D` 边框 [商学院](https://www.matechs.com/) 赞助其发展的团体.

## 贡献者

多亏了这个惊人项目的所有贡献者, 你们中的许多人从功能到错误报告都做出了贡献, 没有你们的工作, 修复这个库就离不远了。 如果你愿意加入我们,请伸出手来(无论你的经验如何)!

## 常见问题

### @effect-ts/core 是什么？

Effect-TS是一套零依赖的库,用于在规模上写出高效,纯功能性的TypeScript\.

### 如何安装 @effect-ts/core？

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

### @effect-ts/core 支持 TypeScript 吗？

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

### @effect-ts/core 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @effect-ts/core 可以商用吗？

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

### @effect-ts/core 的下载量有多少？

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

### @effect-ts/core 还在维护吗？

最新版本 0\.60\.5 发布于 2022/12/21（3 年前）；至今共发布 500 个版本，其中过去 12 个月发布了 0 个；首次发布于 2020/08/21。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

