@fangorn-network/sdk

中文文档
0.1.5发布于 2026/11/13MITTypeScriptES Module构建来源已验证近 30 天下载 4260

权力下放、可核查和无平台内容管理框架

中文使用文档
文档目录6 节
  1. 模型
  2. 快速启动 (SDK)
  3. 快速启动( CLI)
  4. 网络
  5. 发展
  6. 许可证

方刚 SDK

Fangorn是用于发布数据。 你发表 还原 记录,你可以使任何字段支付。 每一个雷波的脑袋都扎根于链条上,它的历史生活在IPFS中. 任何人都可以读取,校验,diff,订阅,或从你的回购中购买,而无需向您询问索引器或平台.

npm i @fangorn-network/sdk

模型

  • 出版社. 钱包地址 出版商拥有他们的回扣,没有人承认或批准它们.
  • 复问. 已按键 publisher : repo它的状态是一张地图 记录 { id, type, payload },存储为内容地址的默克勒搜索树.
  • 承诺. 每一方在母体和一个CAR文件中承诺点数,并持有它引入的块. 历史可以单从头上走走并传播.
  • 推来推去. 将上链头移动到母体上的比较和擦拭,如 git ref 更新. 登记处只储存人头.
  • 付费田地. 出版商在记录中封印出场并签出价. 买家通过和解注册支付,一个密钥服务器释放出密钥.
  • 应用程序只是重置. 应用程序是出版商的唱片 引用 其他出版商的唱片 在命名的头。 它会选择和安排数据,但是它从不持有数据或打开数据. 当被引用导致发售时,该应用软件的出版商地址会收到推荐份额.

Fangorn不是:它不是一个数据库。 它没有查询语言,也没有索引器. 你在上面盖的 subscribe (见 西马赫) (中文(简体) ).

快速启动 (SDK)

import { Fangorn } from "@fangorn-network/sdk";

const fangorn = Fangorn.create({
    privateKey: "0x...",
    storage: { signedUrl: {} }, // hosted uploads on Base Sepolia; or { pinata: { jwt, gateway } }
});

await fangorn.initRepo("rusty-anchor");
await fangorn.uploadBatch("rusty-anchor", [
    { id: "t1", type: "track", payload: { title: "Locura", artist: "Alice" } },
]);

// Anyone, from the head alone:
const { contents } = await fangorn.readRepo(
    fangorn.getAddress(),
    "rusty-anchor",
);

for await (const change of fangorn.subscribe({
    repo: "rusty-anchor",
    owner: fangorn.getAddress(),
})) {
    console.log(change.puts, change.deletes);
}

快速启动( CLI)

npm i -g @fangorn-network/sdk
fangorn init                       # wallet key, storage → ~/.fangorn/config.json
fangorn repo init rusty-anchor     # create on chain, track in ./.fangorn
fangorn add .                      # stage files: csv/json rows → records, text files → one record each
fangorn commit                     # local commit (IPFS only)
fangorn push                       # move the on-chain head
fangorn subscribe --owner 0x... rusty-anchor   # stream diffs as JSON lines

这个 指南 覆盖全部流量: 承诺 vs 推取, 时代, 历史, 签名, 代理卡, 存储, 以及被封和付费的字段 .

网络

Fangorn 运行在 塞波利亚基地 (默认)和 塞波利亚角。每个系统都有自己的数据注册、结算注册、托管上传工作人员和密钥服务器。 地址在 src/config.ts (单位:千美元)BaseSepoliaConfig, (中文(简体) ), ArbitrumSepoliaConfig) (中文(简体) ). CLI要求网络在 fangorn init,以及 CHAIN_NAME=arbitrumSepolia 超过它。 使用本地的阴道或私人部署,通过自己的 NetworkConfig 改为 Fangorn.create,或设置 FANGORN_* 超接 CLI( 见 指南) (中文(简体) ). 合同来源在 粉丝网络/合同。 。 。 .

发展

pnpm i
pnpm test        # unit tests + the SDK suite in memory
pnpm test:e2e    # the same suite against the contracts on a fresh anvil
pnpm abis        # regenerate ABIs from the contracts repo

E2e测试需要 anvil, (中文(简体) ), forge,还有兄弟会的离职 fangorn-network/contracts (一组) FANGORN_CONTRACTS_DIR 以使用另一个位置)。 没有他们,测试就会在本地跳过,在CI中失败. E2E_STORAGE=pinata 对Pinata进行测试(PINATA_JWT, (中文(简体) ), PINATA_GATEWAY) (中文(简体) ). pnpm test:live 对塞波利亚基地进行只读检查.

许可证

麻省理工学院

版本与发布记录

@fangorn-network/sdk 共发布 50 个版本,首次发布于 2026/03/11;过去 12 个月发布了 50 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.1.5latest2026/11/131 天前
0.1.42026/11/122 天前
0.1.32026/11/122 天前
0.1.22026/11/122 天前
0.1.12026/11/068 天前
0.1.02026/11/058 天前

关于 @fangorn-network/sdk 的常见问题

@fangorn-network/sdk 是什么?

权力下放、可核查和无平台内容管理框架

如何安装 @fangorn-network/sdk?

在项目目录运行 npm install @fangorn-network/sdk,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 fangorn,可以用 npx fangorn 直接运行。

@fangorn-network/sdk 支持 TypeScript 吗?

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

@fangorn-network/sdk 支持 ESM 还是 CommonJS?

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

@fangorn-network/sdk 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=20.19.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@fangorn-network/sdk 可以商用吗?

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

@fangorn-network/sdk 的下载量有多少?

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

@fangorn-network/sdk 还在维护吗?

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