"CCC - CKBers' Codebase" is the next step of "Common Chains Connector".
Empower yourself with CCC to discover the unlimited potential of CKB.
Interoperate with wallets from different chain ecosystems.
Fully enabling CKB's Turing completeness and cryptographic freedom power.
This project is still under active development, and we are looking forward to your feedback. Try its demo now here. It showcases how to use CCC for some basic scenarios in CKB.
Here's an example for transferring CKB:
const tx = ccc.Transaction.from({
outputs: [{ lock: toLock, capacity: ccc.fixedPointFrom(amount) }],
});Tell CCC what you need, and then...
await tx.completeInputsByCapacity(signer);
await tx.completeFeeChangeToLock(signer, signerLock, 1000); // Transaction fee rate
const txHash = await signer.sendTransaction(tx);We have done everything! Check the demo source code for complete examples.
We design CCC for both front-end and back-end developers. You need only one package to fulfil all your needs:
- NodeJS:
npm install @ckb-ccc/ccc - Web Component:
npm install @ckb-ccc/connector - React:
npm install @ckb-ccc/connector-react
CCC exports everything on the ccc object:
import { ccc } from "@ckb-ccc/<package-name>";For developers who use Lumos to compose CKB transactions, CCC provides patches to:
- Support the JoyID Wallet.
- Support the Nostr Wallet.
See lumos-patches: npm install @ckb-ccc/lumos-patches
You can apply patches by:
import { generateDefaultScriptInfos } from "@ckb-ccc/lumos-patches";
// Before using Lumos. You don't need @ckb-lumos/joyid anymore.
registerCustomLockScriptInfos(generateDefaultScriptInfos());- Nervos CKB Docs is the documentation website of Nervos CKB.
- Lumos and its Docs: Lumos provides utils to help compose CKB transactions.
- RGB++ SDK and its Design: RGB++ is a protocol for issuing assets with Turing-completed VM on BTC L1.
- Spore SDK and its Docs: The on-chain digital object (DOBs) protocol designed to empower ownership, distribution, and value capture.