如何定义一个Blocklet基石程序

如何定义一个Blocklet基石程序,第1张

什么是 Blocklet?

Blocklet(基石程序) 是供开发者和社区用户在ArcBlock平台上创建事物的可重用构建模块。简单来说,Blocklet 可以是任何现成的组件、模块、库、前端视图或其他简化构建 dApp(去中心化应用)过程的工具。您选择一个 Blocklet 后,就可以安装、启动并运行该 Blocklet。除了使用单一的 Blocklet, 用户也可以将多个Blocklet组合在一起,用于构建更复杂的 dApp。

对于不同的应用场景,我们提供了不同的 Blocklet,包括但不限于:

•入门模板:开发者可以在几分钟内启动一个已经连接到 Forge 支持的区块链的 dApp;

•功能齐全的 dApp:矿工或社区用户可以即刻安装、启动和运行;

•智能合约:已具备相关业务逻辑的链上管道,可以被一键部署到 Forge 链上;

•Web 组件或服务:支持 ABT 区块链节点

•Azure,AWS 或其他支持云计算平台的示例

•以及更多

Blocklet 会以三种版本发布:官方、合作伙伴、社区版本。

什么是 Blocklet 列表?

为了方便开发者快速找到需要的 Blocklet,ArcBlock 或社区发布的 Blocklet 都会被罗列在blocklet.arcblock.io[1]。这个列表是从 ArcBlock/blocklets[2] 生成的, 用户可以搜索并查看已发布的 Blocklet,只需简单一条命令就可以运行选中的 Blocklet, 这个网站就是 Blocklet 列表。

如何定义一个 Blocklet?

一个 Blocklet 需要以下关键信息:

❯ tree 。 -L 2

├── screenshots

│ ├── image1.png

│ ├── image2.jpg

│ └── image3.png

├── blocklet.md

├── blocklet.json

└── logo.svg

关键信息: blocklet.json

这是定义一个 Blocklet 的关键文件,包含以下域:

{

// Brief introducTIon to the blocklet

“descripTIon”: “A dApp starter that integrates forge-javascript-sdk and create-react-app”,

// Specify the logo file of the blocklet

“logo”: “logo.svg”,

// Can be starter|dapp|contract

“group”: “starter”,

// Can be primary|secondary|error

“color”: “primary”,

// provider informaTIon

“provider”: “ArcBlock”,

“documentaTIon”: “https://docs.arcblock.io”,

“support”: “[email protected]”,

“community”: “https://gitter.im/arcblock/cummonity”,

// Charge settings

“charging”: {

“price”: 10,

“receiver”: “z1en6dudVmqsP1P2ZG1R8DdBZoYPnzw46T1”,

},

// Can the blocklet be used with another blocklet?

“composable”: false,

// Following fields can be inherited from package.json

“name”: “forge-react-starter”,

“version”: “0.37.0”,

“author”: “wangshijun 《[email protected]》 https://github.com/wangshijun”,

“keywords”: [“arcblock”, “forge”, “starter”, “react”, “javascript”],

“homepage”: “https://github.com/ArcBlock/forge-dapp-starters/tree/master/packages/forge-react-starter”,

“repository”: {

“type”: “git”,

“url”: “https://github.com/ArcBlock/forge-dapp-starters/tree/master/packages/forge-react-starter”

},

// Customize the install pipeline of the blocklet

“hooks”: {

“pre-copy”: “”,

“post-copy”: “”,

“configure”: “”,

“complete”: “”

},

“install-scripts”: {

“dependency”: “”

}

}

关键信息: blocklet.md

Blocklet 应该包括一个详细的介绍。为了方便 Blocklet 的未来用户快速上手,介绍中应回答以下几个问题,:

•Blocklet 安装之后可以做什么?虽然用户可以从 Blocklet 所属的群组推断一二,但几句更详细的描述会让用户理解更清晰。

•使用 Blocklet 有什么要求?包括硬件、软件、开发者的经验和技能。

•用户使用 Blocklet 的过程中可能遇到什么问题?如何解决?

关键信息: logo.png

Blocklet 的详细介绍会展示 Blocklet 的标识,标识应该是一张 200px x 200px 背景透明的图片,最好是 png 格式的图片。

关键信息: screenshots

屏幕截屏文件夹应包括几张使用 Blocklet 的截屏,帮助用户快速理解这个 Blocklet 的作用和初衷。

其他信息

包括在过程中需要运行的脚本。

元信息解析

为了避免package.json中有重复的域,有些域可以不在blocklet.json中再次定义,提交后这些域会被自动合并。

如何新建一个 Blocklet?

forge-cli将会支持使用forge blocklet:create来新建一个 blocklet:

•如何新建一个新手 blocklet?

•如何新建一个 dApp blocklet?

•如何新建一个合约 blocklet?

如何发布一个 Blocklet?

1.新建一个 Blocklet 并确保其正常运行

2.Fork 这个仓库

3.把你的仓库地址加入 registry.yml

4.在这个仓库中发一个 Pull Request

5.一旦你的 Pull Request 被合并,你的 Blocklet 就会出现在官方列表中

References

[1] blocklet.arcblock.io: https://blocklet.arcblock.io

[2] ArcBlock/blocklets: https://github.com/arcblock/blocklets
来源: ArcBlock区块基石

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/dianzi/2603211.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-09
下一篇 2022-08-09

发表评论

登录后才能评论

评论列表(0条)

保存