canic
Facade crate that re-exports the main Canic stack for canister projects:
- endpoint and lifecycle macros
- core runtime/types
- curated IC CDK helpers
- stable-memory helpers under
canic::memory
Most downstream canister projects should start here instead of reaching for lower-level crates directly.
Use the explicit module paths for the larger bundled surfaces:
canic::api::*for runtime APIscanic::cdk::*for curated IC CDK helperscanic::memory::*for stable-memory helpers and macros
Default surface
The pre-1.0 default feature set includes the standard Canic runtime bundle:
metrics— exportscanic_metricsin ordinary builds unless you opt outcontrol-plane— enables root/wasm_storecontrol-plane supportsharding— enables sharding-oriented runtime support fromcanic-coreauth-crypto— enables crypto-backed auth/runtime helpers fromcanic-core
Disable default features in Cargo.toml when you need a narrower facade
dependency and want to opt out of the standard runtime bundle.
Optional features
These features can also be selected explicitly when default features are off:
metricscontrol-planeshardingauth-crypto
Typical use
Use canic in both [dependencies] and [build-dependencies] so the build
macros and runtime macros come from the same facade crate.
This crate lives in the Canic workspace. See the workspace guide at
../../README.md for full setup, topology, and example canisters.