ICP Developer Docs
Build on the Internet Computer
Section titled “Build on the Internet Computer”The Internet Computer (ICP) is a blockchain that runs at web speed, serves web content, and provides a complete execution environment for smart contracts called canisters. No cloud servers, no bridges, no external dependencies.
Get started in under 10 minutes
Section titled “Get started in under 10 minutes”Start the quickstart to install icp-cli, create a project, and deploy your first canister.
What makes ICP different
Section titled “What makes ICP different”Chain-key cryptography
Section titled “Chain-key cryptography”Canisters can sign transactions for Bitcoin, Ethereum, and other chains using threshold signatures — no bridges or oracles required. Learn more
Orthogonal persistence
Section titled “Orthogonal persistence”Canister memory survives across executions and upgrades. No databases, no serialization — just use variables. Learn more
Reverse gas model
Section titled “Reverse gas model”Users never pay gas. Canisters pay for their own compute, storage, and bandwidth using cycles. Learn more
Web-native smart contracts
Section titled “Web-native smart contracts”Canisters serve HTTP responses directly. Host full web applications — frontend and backend — entirely onchain. Learn more
Chain Fusion
Section titled “Chain Fusion”Natively interact with Bitcoin, Ethereum, Solana, and other blockchains from ICP canisters. Learn more
Documentation sections
Section titled “Documentation sections”Install tools, create your first project, deploy a canister, and choose your path forward.
Task-oriented how-to guides organized by development stage: backends, frontends, authentication, testing, production, chain fusion, DeFi, governance, and security.
Developer-focused explanations of ICP architecture, capabilities, and design decisions.
Language-specific guides for Rust and Motoko, including stable structures, testing, and CDK reference.
Specifications, canister IDs, token standards, cycle costs, execution errors, and glossary.
AI-assisted development
Section titled “AI-assisted development”ICP has first-class support for AI-assisted development. Install icskills to give your AI agent deep knowledge of ICP patterns:
npx skills add dfinity/icskillsExternal resources
Section titled “External resources”| Resource | Description |
|---|---|
| icp-cli | Command-line tool for ICP development |
| JS SDK | JavaScript/TypeScript libraries for ICP |
| icskills | AI agent skill files for ICP development |
| Learn Hub | Deep protocol-level explanations |
| Motoko core library | Motoko core library documentation |
| Rust CDK | Rust canister development kit API reference |