@effectful/js

中文文档
2.0.12发布于 2026/05/23MITCommonJS近 30 天下载 6534

Single level computation effects syntax

原始使用文档

@effectful/js

A babel plugin implementing single level computational effects syntax.

From v2 it's just a wrapper of @effectful/debugger babel presets and plugins.

Usage

Install the plugin:

$ npm install --save-dev @effectful/js

Instal some custom computational effects runtime library, say "my-rt".

Use as babel-plugin-macro to transform the whole file:

import { ctrl } from "@effectful/js/macro";
ctrl; // invoking the actual macro for the whole file

There is also a babel plugin @effectful/js/babel-plugin-transform.

Note, both the macro and the plugin must run in a separate pass in the preset, for example:

{
  "passPerPreset": true,
  "presets": [
    "some-preset",
    {
      "plugins": ["@effectful/js/babel-plugin-transform"]
    }
  ]
}

Or, if macro is used:

{
  "passPerPreset": true,
  "presets": [
    "some-preset",
    {
      "plugins": ["@babel-plugin-macros"]
    }
  ]
}

The transpiler doesn't support most of the modern JavaScript features, so they must be pre-transpiled even if your environment supports them natively.

There are a few babel presets for this:

  • @effectful/js/babel-preset - for plain JavaScript with some modern features
  • @effectful/js/babel-ts-preset - for TypeScript with some modern features
  • @effectful/js/babel-preset-zero-config - automatically selects TypeScript or plain JS presets, and also adds JSX extensions

LICENSE

Distributed under the terms of The MIT License (MIT).

版本与发布记录

@effectful/js 共发布 65 个版本,首次发布于 2017/07/02;过去 12 个月发布了 4 个版本。

版本发布日期距今
2.0.12latest2026/05/235 个月前
2.0.92026/04/127 个月前
2.0.82025/11/2711 个月前
2.0.72025/11/2711 个月前
2.0.62025/06/051.4 年前
2.0.42025/01/061.9 年前

关于 @effectful/js 的常见问题

@effectful/js 是什么?

Single level computation effects syntax

如何安装 @effectful/js?

在项目目录运行 npm install @effectful/js,或使用 pnpm add / yarn add / bun add。

@effectful/js 支持 TypeScript 吗?

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

@effectful/js 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@effectful/js 可以商用吗?

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

@effectful/js 的下载量有多少?

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

@effectful/js 还在维护吗?

最新版本 2.0.12 发布于 2026/05/23(5 个月前);至今共发布 65 个版本,其中过去 12 个月发布了 4 个;首次发布于 2017/07/02。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。