Candid Library for the Internet Computer

library, program, Propose Tags , Codec.Candid, Codec.Candid.TestExports, Codec.Candid.Tuples
cabal install candid


Candid Documentation

Candid is an interface description language (IDL) for interacting with canisters (also known as services or actors) running on the Internet Computer.

This repository hosts the following crates:

  • candid, a serialization/deserialization library for Candid. You can seamlessly convert between Rust values and Candid in both binary and text format.
  • candid_derive, an internal crate to convert Rust data types to Candid types. This crate should be considered as an implementation detail, and not be used directly, only via the candid crate.


The Internet Computer is a new technology stack that is unhackable, fast, scales to billions of users around the world, and supports a new kind of autonomous software that promises to reverse Big Tech’s monopolization of the internet. It allows developers to take on the monopolization of the internet, and return the internet back to its free and open roots. We're committed to connecting those who believe the same through our events, content, and discussions.

See our CONTRIBUTING and CODE OF CONDUCT to get started.