Skip to main content


Welcome to the Candid documentation for developers.

This Candid Guide explains what Candid is and how you can use it when developing dapps to run on the IC. The information here is intended primarily for backend and frontend developers who want to deploy canisters on the IC. If you want to implement support for a new language or extend existing Candid features, you should refer to the formal Candid specification for background information and details about the internal structure of the language.

  • The What is Candid? section introduces the purpose and key features of the Candid interface description language. It includes an overview of how Candid works and some simple examples to give you a working knowledge of how you can apply Candid to your use case.

  • The How to section explains how to perform typical tasks.

  • The Reference section provides links to Candid tools and libraries and detailed reference information about Candid-supported types.