C++ Canister Development Kit

icpp-pro is a CDK to develop C++ smart contracts for the Internet Computer.

"...needed to have more flexibility with using c++ code as backend server. With the introduction of icpp within icp, it is now possible to create something that crosses the borders of what is possible."
Ktimam Imam (ICSoccerWorld)


Download Statistics

Capabilities

Capability icpp-pro
Compile C++ Smart Contracts to WebAssembly for the IC
Seamless compilation with wasi-sdk and deployment of wasm to IC Canisters
Candid API
All candid types & forward compatibility are supported
Orthogonal Persistence
for primitives, sequence containers & associative containers
(int, float,...) , (std::vec, std::list,...) & (std::map, std::unordered_map)
Canister Initialization
canister_init
Cross-platform development, deployment & testing experience
Windows, Linux, Mac
Fast compilation using concurrency
Multi-threaded compilation on Windows, Linux & Mac
Selective compilation
Speed up your builds by re-compiling only your own canister files
Interactive Debugging of C++ Smart Contract with VS Code
Debug your Smart Contract using a fast, native debug compile with Clang++
Unit test framework
Test your Smart Contract using a fast, native debug compile
Smoke test framework
Test your Smart Contract after deployment to local or main IC network

C++ Community

Please join the C++ Community on OpenChat.