ckb-cache-js 可嵌入的 Live Cell Cache 库

XuePing Yang

XuePing Yang

Nervos Core Team

由于 Nervos CKB 的 Cell 模式是类似 UTXO 的模型,那么在组装交易时需要明确 inputs 的输入,这样不管是开发钱包、dApp server 还是其他任何需要和 CKB 交互的应用场景,都需要一个查询 live cells 的功能。尽管 CKB RPC 已经提供了基于 LockHash 查询 live cells 的功能,这个这个功能是通用型的功能,并且只能根据 LockHash 查询,在很多 dApp 场景中无法适用。

目前正是 CKB 主链 dApp 开发的起始阶段,很多应用都需要灵活的查询 live cells,例如 LockHash、TypeHash、CodeHash 等等查询 Cells,基于这个场景,我开发了ckb-cache-js。考虑到很多 dApp 的开发技术栈是 JavaScript 或者 TypeScript,正如 ckb-cache-js 的命名一样,这个 cache 库是基于 TypeScript 语言开发的。

CKB 脚本编程简介[8]: 高性能 WASM

Xuejie Xiao

Xuejie Xiao

Nervos Core Team

先前的文章中,我已经向你展示过在 CKB 上运行 WASM 程序,但需要注意的是,WASM 程序的性能可能并不那么出色。我也提到了,有一个潜在的解决方案可以解决这个问题。就在今天,我们发布了一个新项目,这个项目可以用来生成高效的 WASM 程序!让我们赶紧来看看它具体是如何操作的。

Animagus 系列文章[1]: 开篇介绍

Xuejie Xiao

Xuejie Xiao

Nervos Core Team

我们相信 Nervos CKB 在新一代的区块链中具有无限的潜能。但同时也需要独特的开发工具才能将 CKB 的潜能充分激发。 Animagus 就是在这种情况下应运而生。

「animagus」的名字来自《哈利·波特》,如果巫师具有将自己变成动物再变回来的本领,就会被称为「animagus」,不同的巫师可以变的动物也有所不同。我个人认为为我们现在的这个项目取名 animagus(阿尼玛格斯)是很适合的,希望大家看完本文后也会有这样的感觉。

Rust 合约[1]:使用 Rust 写 CKB 合约

Jinyang Jiang

Jinyang Jiang

Nervos Core Team

据我所知,目前在 CKB 上部署合约最流行的方式是用 C 代码。在创世块中有 3 个默认的合约 secp256k1 locksecp256k1 multisig lockDeposited DAO,基本上每个使用 CKB 的人都在使用这些合约。

作为一个 Rust 语言爱好者,我们都想在任何场景下使用 Rust。有个好消息,CKB 虚拟机支持 RISC-V 指令集,最近在 Rust 中也增加对 RISC-V 的支持,这意味着我们可以直接将 Rust 代码编译成 RISC-V。然而,坏消息是 RISC-V 目前还不支持 std 库,这意味着你还不能像日常那样去使用 Rust。

本系列文章将向你展示了如何用 Rust 编写 CKB 合约并部署它。我们会发现,no_std Rust 其实比我们一开始想的要好很多。