canic_cdk/lib.rs
1///
2/// Unified façade over the Internet Computer SDK
3///
4/// This module re-exports the core IC developer crates (`ic_cdk`, `candid`,
5/// `ic_cdk_timers`, and management-canister APIs) under a single, stable
6/// namespace. The goal is to provide Canic users with a consistent import
7/// surface regardless of how the underlying IC SDK evolves.
8///
9/// By collecting these crates into one place:
10///
11/// - downstream code can simply use `canic::cdk::*` instead of pulling in
12/// several IC SDK crates directly;
13/// - the Canic framework can update or reorganize its IC dependencies
14/// without requiring changes in dependent canisters;
15/// - the public API surface is easier to document, search, and version;
16/// - consumers benefit from a curated, intentional subset of the IC SDK.
17///
18pub use candid;
19#[expect(deprecated)] // call is flagged as deprecated but functions inside arent
20pub use ic_cdk::{
21 api, call, eprintln, export_candid, futures, init, management_canister as mgmt, post_upgrade,
22 println, query, trap, update,
23};
24pub use ic_cdk_timers as timers;
25pub use icrc_ledger_types;
26
27pub mod env;
28pub mod spec;
29pub mod structures;
30pub mod types;
31pub mod utils;