# CCC Documentation (CKBers' Codebase) > CCC is a monorepo-based TypeScript SDK that abstracts CKB's UTXO-based cell model into developer-friendly APIs. The system enables developers to: > - Compose transactions using high-level abstractions like `ccc.Transaction.from` and automatic input/fee completion > - Integrate wallets from Ethereum (MetaMask), Bitcoin (UniSat, Xverse), Nostr, and native CKB wallets through a unified `Signer` interface > - Interact with CKB nodes via WebSocket/HTTP JSON-RPC clients > - Build UIs using React components (`@ckb-ccc/connector-react`) or Web Components (`@ckb-ccc/connector`) > - Develop and test using the interactive playground at live.ckbccc.com Notes for AI agents: - All links below are absolute URLs. Append `.md` to any docs page URL to get its raw Markdown version (e.g. https://docs.ckbccc.com/en/docs/getting-started/introduction.md). - The entire documentation concatenated into a single file: https://docs.ckbccc.com/llms-full.txt - Chinese versions of every page are available by replacing `/en/` with `/zh/` in the URL. - API reference: https://api.ckbccc.com | Playground: https://live.ckbccc.com | Source: https://github.com/ckb-devrel/ccc ## Common tasks (recommended reading paths) Start here, then read the linked pages in order for the task at hand: - New to CCC: [Introduction](https://docs.ckbccc.com/en/docs/getting-started/introduction) → [Installation](https://docs.ckbccc.com/en/docs/getting-started/installation) → [Quick Start](https://docs.ckbccc.com/en/docs/getting-started/quick-start) - Connect a wallet: [Connect Wallets](https://docs.ckbccc.com/en/docs/guides/connect-wallets) → [Signer](https://docs.ckbccc.com/en/docs/concepts/signer) → pick a wallet under "Wallet Integrations" below - Build & send a transaction: [CKB Cell Model](https://docs.ckbccc.com/en/docs/concepts/cell-model) → [Transaction](https://docs.ckbccc.com/en/docs/concepts/transaction) → [Compose Transactions](https://docs.ckbccc.com/en/docs/guides/compose-transactions) - Use CCC in a Node.js backend: [Node.js Backend](https://docs.ckbccc.com/en/docs/guides/node-js-backend) → [@ckb-ccc/shell](https://docs.ckbccc.com/en/docs/packages/core-packages/shell) → [Client](https://docs.ckbccc.com/en/docs/concepts/client) - Sign & verify a message: [Sign Message](https://docs.ckbccc.com/en/docs/guides/sign-message) → [Signer](https://docs.ckbccc.com/en/docs/concepts/signer) The "Wallet Integrations" section lists one page per supported wallet — read only the one(s) your app targets; they all share the same unified `Signer` interface. - **Get Started** - [Introduction](https://docs.ckbccc.com/en/docs/getting-started/introduction): Everything you need to build on CKB — wallets, transactions, signers, and multi-chain support — in one TypeScript SDK. - [Quick start](https://docs.ckbccc.com/en/docs/getting-started/quick-start): Send your first CKB transaction on-chain with CCC — in under 5 minutes. - [Installation](https://docs.ckbccc.com/en/docs/getting-started/installation): Install CCC for your environment — React frontend, Node.js backend, or custom UI. - **Core Concepts** - [CKB Cell Model](https://docs.ckbccc.com/en/docs/concepts/cell-model): Understand the UTXO-based cell model that underlies every CKB transaction. - [Signer](https://docs.ckbccc.com/en/docs/concepts/signer): Signers represent connected wallets and provide signing, address, and transaction capabilities. - [Transaction](https://docs.ckbccc.com/en/docs/concepts/transaction): Build, complete, and send CKB transactions — CCC handles input selection and fee calculation for you. - [Client](https://docs.ckbccc.com/en/docs/concepts/client): Clients connect CCC to CKB nodes and provide chain data access. - [Address](https://docs.ckbccc.com/en/docs/concepts/address): Parse and construct CKB addresses, which encode a lock script and network prefix. - **Guides** - [CCC Playground](https://docs.ckbccc.com/en/docs/guides/playground): Learn to use the CCC Playground — an in-browser IDE for writing, running, and sharing CKB transaction scripts. - [Connect Wallets](https://docs.ckbccc.com/en/docs/guides/connect-wallets): Integrate multi-chain wallet connectivity into your CKB application. - [Compose Transactions](https://docs.ckbccc.com/en/docs/guides/compose-transactions): Build and send CKB transactions with automatic input selection and fee calculation. - [Sign Messages](https://docs.ckbccc.com/en/docs/guides/sign-message): Sign and verify messages across multiple wallet types with CCC's unified signing interface. - [UDT Tokens](https://docs.ckbccc.com/en/docs/guides/udt-tokens): Issue and transfer User Defined Tokens (UDT) and xUDT on CKB. - [Spore Protocol](https://docs.ckbccc.com/en/docs/guides/spore-protocol): Create and manage digital objects (DOBs) using the Spore Protocol SDK. - [Node.js Backend](https://docs.ckbccc.com/en/docs/guides/node-js-backend): Use CCC for server-side CKB development, data analysis, and scripting. - **Examples** - [Code Examples](https://docs.ckbccc.com/en/docs/code-examples): Ready-to-run code examples for CCC — open them in the Playground, clone them for your own projects, or reference them as patterns. - **Packages** - [CCC Package Guide](https://docs.ckbccc.com/en/docs/packages): A complete overview of every NPM package in CCC. Choose the right package based on your runtime environment, framework, and feature requirements — covering the core SDK, wallet integrations, protocol extensions, and more. - Core Packages: Foundational packages: core primitives and aggregated entry points. - [Core Packages](https://docs.ckbccc.com/en/docs/packages/core-packages): Foundational packages — core primitives, aggregated entry points, and wallet connectors. - [@ckb-ccc/ccc](https://docs.ckbccc.com/en/docs/packages/core-packages/ccc): All-in-one browser bundle — core primitives, all wallet signers, and protocol SDKs in a single ccc namespace. - [@ckb-ccc/core](https://docs.ckbccc.com/en/docs/packages/core-packages/core): The foundational CCC primitives — Transaction, Script, Address, Client, Signer, and more. - [@ckb-ccc/shell](https://docs.ckbccc.com/en/docs/packages/core-packages/shell): CCC for Node.js — backend scripting, data analysis, and server-side transactions. - [@ckb-ccc/connector](https://docs.ckbccc.com/en/docs/packages/core-packages/connector): Web Component connector for wallet connectivity — framework-agnostic. - [@ckb-ccc/connector-react](https://docs.ckbccc.com/en/docs/packages/core-packages/connector-react): React connector with Provider component and hooks for CKB wallet integration. - Protocol Support Layer: Protocol-level SDKs built on top of core: Spore, UDT, SSRI, Lumos patches. - [Protocol Support Layer](https://docs.ckbccc.com/en/docs/packages/protocol-sdks): Protocol-level SDKs built on top of core — Spore, UDT, SSRI, and Lumos compatibility patches. - [@ckb-ccc/spore](https://docs.ckbccc.com/en/docs/packages/protocol-sdks/spore): Spore Protocol SDK for creating and managing on-chain digital objects(DOB). - [@ckb-ccc/udt](https://docs.ckbccc.com/en/docs/packages/protocol-sdks/udt): UDT and xUDT token SDK for issuing and transferring User Defined Tokens. - [@ckb-ccc/ssri](https://docs.ckbccc.com/en/docs/packages/protocol-sdks/ssri): SSRI (Script-Sourced Rich Information) protocol support for CKB smart contracts. - [@ckb-ccc/lumos-patches](https://docs.ckbccc.com/en/docs/packages/protocol-sdks/lumos-patches): Compatibility patches enabling Lumos SDK to work with JoyID, Nostr, and Portal wallets. - Wallet Integrations: Signer packages that connect CCC with concrete wallet ecosystems. - [Wallet Integrations](https://docs.ckbccc.com/en/docs/packages/wallet-integrations): Connect any wallet — JoyID, MetaMask, OKX, and more — with a single unified Signer interface. - [@ckb-ccc/joy-id](https://docs.ckbccc.com/en/docs/packages/wallet-integrations/joy-id): JoyID wallet integration — passkey-based, no seed phrase required. - [@ckb-ccc/eip6963](https://docs.ckbccc.com/en/docs/packages/wallet-integrations/eip6963): Connect any EVM wallet to CKB — automatic multi-wallet discovery via the EIP-6963 standard. - [@ckb-ccc/nip07](https://docs.ckbccc.com/en/docs/packages/wallet-integrations/nip07): Connect any Nostr extension to CKB — NIP-07 signing through a unified Signer interface. - [@ckb-ccc/utxo-global](https://docs.ckbccc.com/en/docs/packages/wallet-integrations/utxo-global): Connect UTXO Global Wallet to CKB — multi-chain signing (CKB, Bitcoin, Dogecoin) through a unified Signer interface. - [@ckb-ccc/okx](https://docs.ckbccc.com/en/docs/packages/wallet-integrations/okx): Connect OKX Wallet to CKB — Bitcoin and Nostr signing through a unified Signer interface. - [@ckb-ccc/uni-sat](https://docs.ckbccc.com/en/docs/packages/wallet-integrations/uni-sat): Connect UniSat Wallet to CKB — Bitcoin signing through a unified Signer interface. - [@ckb-ccc/rei](https://docs.ckbccc.com/en/docs/packages/wallet-integrations/rei): Connect REI Wallet to CKB — native CKB signing with Secp256k1 through a unified Signer interface. - [@ckb-ccc/xverse](https://docs.ckbccc.com/en/docs/packages/wallet-integrations/xverse): Connect Xverse and SATS Connect compatible wallets to CKB — Bitcoin signing through a unified Signer interface.