[EN/CN]CKB DevRel Weekly Meeting Notes Series

We will continuously update the development progress of CKB DevRel in this thread. Developers! Please share your ideas and participate in discussions here.
CKB DevRel is dedicated to enhancing the CKB development experience by providing more user-friendly tools for CKB developers. :pray:
Let’s make CKB great again.

将在本帖内持续更新CKB DevRel的开发进度,欢迎各位开发者朋友在本帖内提出需求,并进行讨论
CKB DevRel 将持续优化 CKB 开发体验,为 CKB 开发者提供更多易用的开发工具:pray:
Let’s make CKB Great Again.

Follow our twitter: x.com

5 Likes

Meeting Notes #1

CCC

  • What is CCC
    • CCC stands for Common Chain Connector. It is a wallet connector library designed to work with the CKB JS toolchain in the ecosystem.
    • It consists of a Core library for backend development and a Connector frontend library based on the Core, providing a unified development experience for both frontend and backend developers.
    • Features provided by the Core library for backend development include:
      • Unified abstract API for frontend and backend
      • API for interacting with CKB RPC using connected addresses
      • Read-only wallets for EVM, BTC, and CKB addresses
      • Encoding and decoding of CKB addresses
      • Powerful encoding/decoding and type conversion tools
    • Additional features provided by the CCC Connector include:
      • Multi-chain wallet connection components, including UniSat, OKX Wallet, JoyID, and Metamask
      • Component API for use with the React framework
  • Experience CCC: CCC Demo

SSRI

  • What is SSRI
    • SSRI stands for Script-Sourced-Rich-Information.
    • SSRI defines a standard for script behavior on-chain, abstracting behavior into a series of method constraints. Scripts meeting these constraints can be recognized as having specific behaviors. Off-chain, it defines standards for script execution, allowing scripts executed off-chain to obtain more information via specific syscalls to construct outputs.
    • Similar to ABI, SSRI achieves composability through off-chain generation and on-chain verification. Due to CKB-VM being a sandbox capable of executing any logic off-chain, SSRI is more flexible and offers stronger upgradeability than ABI.
  • For example:
    - Upcoming BTC cross-chain assets and stablecoin assets on CKB will have unique minting and permission control logic. Once the behavior of UDT-type scripts is defined, their xUDT-like code can be seamlessly compatible.
    - .bit domain names will use the DOB protocol upgrade on CKB, featuring unique minting and renewal logic. Once the behavior of DOB-type scripts is defined, their deployed code can be seamlessly compatible with other applications.
  • We need more discussions from community developers about SSRI. Feel free to leave comments on Nervos Talk, Twitter, TG group, and Discord.

DOB

  • Difference between Spore and DOB Protocol
    • Spore is a specific type of Cell/asset implementation, controlling Cell behavior.
    • The DOB protocol family describes an abstract way of interpreting Cell information, built on Spore.
  • What is the DOB Protocol Family
    • The common elements of the DOB protocol are DNA + Pattern + Decoder:
      • DNA contains the life information of DOB, including its birth time and space coordinates, each DOB having unique data.
      • Pattern describes how to interpret the DNA, giving meaning to the DOB’s DNA, such as name, age, etc.
      • Decoder is the interpreter for DNA and Pattern.
  • What is DOB0
    • A DOB protocol focused on handling text, specifying the configuration and interface format of Decoders on DOB, providing a general Decoder to reduce most application development work. However, applications can also customize their Decoders according to their requirements.
  • What is DOB1
    • A DOB protocol focused on handling images, allowing multiple image-containing Cells to be combined, for example, allowing a game character to wear equipment or hold weapons.
    • An extension of DOB0 for image narration.
    • Currently under development, more information will be disclosed later.
  • Why we designed the DOB Protocol Family
    • Spore’s design stores complete image information in each Cell, which is costly.
    • NFTs with only images lack composability. The DNA-based design of DOB offers great potential for future gameplay.
    • All information of DOB is stored on-chain, avoiding the security risks of storing server addresses on-chain.

CCC

  • 什么是CCC
    • CCC是Common Chain Connector的缩写,是一个钱包连接库,被设计于与生态中的 CKB JS 工具链协同工作
    • 分为面向后端开发的 Core 库和基于 Core 的 Connector 前端库 - 可以为前后端开发提供统一的开发体验
    • 面向后端的Core库目前提供的功能
      • 前后端统一的抽象API
      • 通过已连接的地址,与 CKB RPC 交互的API
      • EVM,BTC 和 CKB 地址的只读钱包
      • CKB地址的编码和解析
      • 强大的编码解码,类型转换工具
    • CCC Connector 额外提供的功能
      • 多链钱包连接组件 - 包括 UniSat,OKX Wallet,JoyID,Metamask
      • 供React框架使用的组件API
  • 体验 CCC: https://ckbccc-demo.vercel.app/

SSRI

  • What is SSRI
    • SSRI 是 Script-Sourced-Rich-Information 的缩写
    • SSRI在链上定义了一套Script的行为标准,将行为抽象为一系列的Method约束,满足Method约束的Script可以被认定为具有特定的行为,在链下定义了一套Script执行的标准,在链下执行的Script可以通过特定的syscall获得更多的信息构建输出
    • 类似于ABI,以链下生成+链上验证的联动实现了可组合性,由于CKB-VM是一个可以链下执行任意逻辑的沙盒,SSRI比ABI更灵活,也具有更强的可升级性
  • 举个例子:
    • 比如即将出现在 CKB 上的 BTC 跨链资产和稳定币资产,会有独特的铸造和权限控制逻辑,在我们定义了 UDT 类 Script 的行为之后,它们的类 xUDT 代码可以被无缝兼容。
    • .bit 域名会在 CKB 上使用 DOB 协议升级,有关于铸造和续费的独特逻辑。在我们定义了 DOB 类 Script 的行为之后,他们部署的代码也可以无缝被其它应用兼容。
  • 关于SSRI,我们需要更多来自社区开发者的讨论,欢迎大家在Nervos Talk,推特,TG群和Discord给我们留言

DOB

  • Spore 和 DOB Protocol 的区别
    • Spore 是具体的一种 Cell / 资产类型,是关于控制 Cell 行为的一种实现。
    • DOB 协议族则描述了 Cell 信息解读的一种抽象方式,建立在 Spore 的基础之上。
  • 什么是 DOB 协议族
    • DOB协议的共同点是DNA + Pattern + Decoder
      • DNA,包含了DOB的生命信息,是DOB诞生的时间和空间坐标,每个DOB拥有的独特数据
      • Pattern,描述了 DNA 的解析方式,为 DOB 的 DNA 赋予了意义,比如name,age…
      • Decoder,DNA和Pattern的解释器
  • 什么是 DOB0
    • 专注处理Text的DOB协议,规定了 DOB 上 Decoder 的配置方式及接口格式,同时提供了一个通用的 Decoder 来减少大部分应用的开发工作,但是应用方也可以根据自己的要求定制自己的Decoder
  • 什么是 DOB1
    • 专注处理Image的DOB协议, 允许多个包含图片的Cell进行叠加组合,比如让一个游戏角色穿上装备/拿上武器
    • 是DOB0在图片叙事上的扩展
    • 正在开发,更多信息将会在之后披露
  • 为什么要设计 DOB 协议族
    • Spore 的设计是每个 Cell 都存储完整的图片信息,这种做法的开销巨大
    • 只有图片的 NFT 没有可组合性,DOB 基于 DNA 的设计在未来有很大的玩法潜力
    • DOB 的全部信息都存在于链上,避免了链上存服务器地址方式的安全隐患
3 Likes

Thanks Saku, this is great idea for the community to be able to follow the development progress of CKB, really appreciated!

Thank you, Yeti :heart: If you need any further assistance with CKB development, please let us know.

1 Like

Meeting Notes #2

CCC

  1. CCC will introduce transaction skeleton and trasnaction sending features, gradually replacing Lumos and evolving into a JS SDK.
  2. The CCC documentation is complete and available for developers to review. Here is the link: https://ccc-docs.vercel.app/
  3. Reasons for developing CCC:
    • To leverage the advantages of CKB’s customizable cryptographic primitives, allowing developers to intuitively experience multi-chain compatibility where every blockchain wallet can become a CKB wallet.
    • To optimize the developer experience in connecting wallets, signing, and sending transactions.
    • To enhance the interaction experience between developers and the CKB chain.
  4. Goals for CCC:
    • To fill the gap in the CKB ecosystem with a signature tool library, making it easier for dApps to interact with the CKB chain.
    • To relieve JS developers from worrying about the intricacies of signing.
    • To make it easier for users of wallets from other chains to use CKB applications.

SSRI

  1. What is SSRI:
    • SSRI stands for Script-Sourced-Rich-Information.
    • SSRI defines a set of behavioral standards for scripts on the chain, abstracting behaviors into a series of method constraints. Scripts that meet these method constraints can be recognized as having specific behaviors. Off-chain, it defines a set of execution standards for scripts, where off-chain scripts can obtain more information through specific syscalls to construct outputs.
    • Similar to ABI, SSRI achieves composability through the interaction of off-chain generation and on-chain verification. Since CKB-VM is a sandbox that can execute arbitrary logic off-chain, SSRI is more flexible and has stronger upgradability.
  2. Why we need SSRI:
    • The Nervos ecosystem lacks application layer protocols because CKB lacks an abstraction layer to describe on-chain behaviors. sUDT, xUDT, m-NFT, and Spore all describe specific types of assets that can only be executed according to predetermined logic. They are implementations rather than protocols. A specific implementation cannot meet everyone’s needs, leading to multiple implementations, which in turn means additional work for adapting to new implementations.
  3. What SSRI provides to application developers:
    • It extends the capabilities of scripts, allowing them to execute off-chain and return results, enabling developers to embed arbitrary information/logic into scripts to describe their behavior and manage data for off-chain applications.
    • For example:
      • The upcoming BTC cross-chain assets and stablecoins on CKB will have unique minting and permission control logic. After defining the behavior of UDT-like scripts, their xUDT code can be seamlessly compatible.
      • The .bit domain names will use the DOB protocol for upgrades on CKB, with unique logic for minting and renewal. After defining the behavior of DOB-like scripts, their deployed code can also be seamlessly compatible with other applications.
  4. Development progress of SSRI - In development

DOB

  1. The primary composability protocol of DOB has been designed:
    • In the DOB protocol family, DOB/0 and DOB/1 respectively give DOB the ability to display text and images. However, DOB’s potential goes far beyond just displaying in various forms; the concept of “objects” in the digital world grants them the possibility of combination and interaction.
  2. The basic development of DOB1 is complete. DOB1:
    • Is an extension of DOB0 in image narrative.
    • Focuses on handling images in the DOB protocol, allowing multiple cells containing images to be superimposed and combined, such as letting a game character wear equipment or wield weapons.
  3. What developers can do with future DOB protocols:
    • Better develop blockchain games on CKB.
    • Achieve fully on-chain, composable digital objects.

Future Plan

Indexer

  1. A data query API key will be available later.

CKB Infrastructure

  • For JS developers:
    • We will focus on improving the development experience of the CKB JS ecosystem, providing lightweight SDK tools to help developers quickly develop applications.
    • CCC will gradually offer more features, improving the development experience end-to-end.
  • For Rust developers:
    • We will provide a more engineering-friendly Rust SDK for script development in large projects, addressing the lack of SDKs in script development.
    • We will improve the user experience of CKB std and molecule, more details will be released soon.

Ecosystem

  1. JoyDAO is integrating with CCC, so users can look forward to using various wallets to operate Nervos DAO.
  2. A team is developing a multisig tool supporting native CKB addresses, making multisig tools easier to use.
  3. A team will develop g a CKB wallet bot on Ton, facilitating Ton ecosystem integration.
  4. Solana Lock development is planned, helping developers integrate with the Solana ecosystem.

CCC

  1. CCC会增加拼交易和发交易的功能,逐渐取代Lumos,变成JS SDK
  2. CCC 文档已完成,可以供开发者查阅:https://ccc-docs.vercel.app/
  3. 为什么要做CCC
    • 利用CKB自定义密码学原语的优势,让开发者直观地感受到自定义密码学原语可以实现多链兼容,每个区块链钱包都可以成为CKB钱包
    • 优化开发者连接钱包和签名,和发送交易的体验
    • 优化开发者和CKB链的交互体验
  4. CCC要达成的目标
    • 补足 CKB 生态中缺失的签名工具库,帮助 dApp 更轻松地和 CKB 链交互
    • JS 开发者不再需要关心签名的细节
    • 方便其他链钱包已有的用户使用 CKB 应用

SSRI

  1. 什么是 SSRI
    • SSRI 是 Script-Sourced-Rich-Information 的缩写
    • SSRI在链上定义了一套Script的行为标准,将行为抽象为一系列的Method约束,满足Method约束的Script可以被认定为具有特定的行为,在链下定义了一套Script执行的标准,在链下执行的Script可以通过特定的syscall获得更多的信息构建输出
    • 类似于ABI,以链下生成+链上验证的联动实现了可组合性,由于CKB-VM是一个可以链下执行任意逻辑的沙盒,SSRI比ABI更灵活,也具有更强的可升级性
  2. 我们为什么需要 SSRI
    1. Nervos 生态没有应用层协议,因为 CKB 缺乏描述链上行为的抽象层级。sUDT、xUDT、m-NFT 和 Spore 都描述了一种具体类型的资产,它只能按预先确定的逻辑执行,是一种实现而非协议。一种具体的实现无法满足所有人的需求,多种实现是必然的结局,而缺乏抽象层级又意味着额外的适配新实现的工作量。
  3. SSRI会为应用开发者提供什么
    • 实现了对Script能力的扩展,Script 能在链下执行并返回结果,让开发者可以将任意的信息/逻辑嵌入到 Script 中,向链下应用描述自己的行为和管理的数据。
    • 举个例子:
      • 比如即将出现在 CKB 上的 BTC 跨链资产和稳定币资产,会有独特的铸造和权限控制逻辑,在我们定义了 UDT 类 Script 的行为之后,它们的类 xUDT 代码可以被无缝兼容。
      • .bit 域名会在 CKB 上使用 DOB 协议升级,有关于铸造和续费的独特逻辑。在我们定义了 DOB 类 Script 的行为之后,他们部署的代码也可以无缝被其它应用兼容。
  4. SSRI 的开发进度 - 正在开发

DOB

  1. DOB的可组合性协议已经完成初步设计
    1. 在 DOB 协议族中,DOB/0 和 DOB/1 分别赋予了 DOB 展示文本和图片的能力。但 DOB 的潜力远远不只在多种形态的展示上,数字世界中「物」的概念赋予了它们相互之间组合,交互的可能。
  2. DOB1 基本开发完成,DOB1:
    1. 是DOB0在图片叙事上的扩展
    2. 专注处理Image的DOB协议, 允许多个包含图片的Cell进行叠加组合,比如让一个游戏角色穿上装备/拿上武器
  3. 开发者通过未来的DOB协议可以做什么
    • 更好地在CKB上开发链游
    • 实现全链上,可组合的数码物

Future Plan

Indexer

  1. 之后会有可用的数据查询API key

CKB基建

  • 对JS开发者
    • 我们会着重提升 CKB JS 生态的开发体验,同时提供轻量级的SDK工具帮助开发者快速开发应用
    • CCC 会逐步提供更多的功能,从前到后地改善应用的开发体验。
  • 对Rust开发者
    • 会为大型项目的 Script 开发提供更工程友好的 Rust SDK,补足 Script 开发中 SDK 缺失的问题。
  • 会改进CKB std和Molecule的使用体验

生态项目

  1. JoyDAO 正在接入CCC,可以期待之后大家使用多种钱包对Nervos DAO进行操作
    1. JoyDAO体验demo: https://joydao.vercel.app/
  2. 有团队正在开发支持CKB原生地址的多签工具,之后会有便于使用的多签工具
  3. 有团队正在开发CKB在Ton上的钱包机器人,方便Ton生态的接入
  4. Solana Lock开发纳入计划,会帮助开发者实现Solana生态的接入
3 Likes

Meeting Notes#3

CCC

  • CCC 对 Nostr 插件钱包和 JoyID 钱包的支持已经在 0.0.6-alpha.0 版本完成了,目前可以使用测试网的 Nostr Lock。同样更新的还有 lumos-patches,为 Lumos 添加了组装测试网涉及 Nostr Lock 的交易的支持。
  • CCC 进行了UX更新和优化

DOB

  • DOB1 协议正在开发
  • DOB 组合性协议已经设计完成
  • Spore SDK 发布了 0.2.0 版本,处理了以下问题:
    • 支持 .bit 账号的转账功能
    • 内置 .bit 版本的 Spore 合约部署信息
    • 支持 .bit 版本合约的动态查找与更新

SUS

  • 发布了博客 - 杂谈:一次性密封,可以在Nervos Talk查看:[EN/CN] Misc: Single-Use-Seals - 杂谈:一次性密封 - #2 by saku
    • 博客分享了一次性密封的原理,在CKB上的实现,以及其最重要的应用场景之一:控制代币资产发行上限
    • Single Use Lock 和 Type Proxy Lock的合约将会被部署到主网

生态

  • JoyID 已经支持从 IPFS 地址读取并展示图片
  • JoyDAO已经可以正常使用,请在:https://joydao.vercel.app/ 体验

CCC

  • The support for Nostr plugin wallet and JoyID wallet in CCC has been completed in version 0.0.6-alpha.0, and now the Nostr Lock on the testnet can be used. Additionally, lumos-patches have been updated to add support for assembling transactions involving Nostr Lock on the testnet in Lumos.
  • CCC has updated and optimized UX design.

DOB

  • DOB1 protocol is under development.
  • The composability protocol of DOB has been designed.
  • Spore SDK has released version 0.2.0, addressing the following issues:
    • Supports transfer functions for .bit accounts.
    • Built-in Spore contract deployment information for .bit version.
    • Supports dynamic lookup and updates of .bit version contracts.

SUS

  • Published a blog - Miscellaneous: Single-use seals, which can be viewed on Nervos Talk: [EN/CN] Misc: Single-Use-Seals - 杂谈:一次性密封 - #2 by saku
    • The blog shares the principles of single-use seals, their implementation on CKB, and one of their most important application scenarios: controlling the issuance cap of assets.
    • The contract of Single Use Lock and Type Proxy Lock wil be deployed on the mainnet soon

Ecosystem

  • JoyID now supports reading and displaying images from IPFS addresses.
  • JoyDAO is now fully functional, please experience it at: https://joydao.vercel.app/
2 Likes

Meeting Notes #4

CCC

DOB

CCC

DOB

1 Like