IC-Kit v0.5 Developer Preview

Hey guys, Parsa here from Psychedelic. Today we released the developer preview of ic-kit, some of you may already about it, but for those who don’t IC-Kit is basically an IC-CDK replacement we built to serve the needs we encountered most of which had to do with unit testing.

So initially, ic-kit was actually a drop-in replacement and a wrapper around ic-cdk, which had mock implementations of the CDK too, so you could use a canister in rusts, and test your canister logic using good old cargo test.

That solved the issues for us, then as our ecosystem grow, we felt the need to have more than that, especially improve ic-kit around multi-canister test suites, since our services often relied on each other to bring a better and more unified user experience.

To achieve this, we decided to go one layer lower with our mock implementation and do this properly at the system level APIs (ic0:: namespace), and have a simulated replica embedded within your code. And start to take care of the kit a bit more, this required us to break some one-to-one compatibility with the ic-cdk, we deprecated some methods and added other alternatives.

You can check out the alpha preview on our GitHub! and star us if you find it valuable! The repository readme has some of the highlights.

Please let me know what is it you think we may be missing xD

(p.s we’ll publish an official canister development handbook (rust) pretty soon :wink:)

5 Likes

Btw, let us know if there are ways that you’d like us to incorporate features or compatibility for your patterns down at a lower level in IC-CDK! We think that what you’re doing is great, and we’d like to make sure that the packages are as interoperable for devs as possible

2 Likes