TypeScript / JavaScript
JavaScript is a well-known programming language used for web pages and other interactive, dynamic runtime environments. JavaScript supports object-orientated, imperative, and declarative programming styles.
TypeScript is a syntax built on top of JavaScript that enables types.
To develop TypeScript and JavaScript smart contracts on ICP, the canister development kit (CDK) known as Azle can be used.
Azle is designed as a fully comprehensive TypeScript and JavaScript environment for ICP canisters. It supports as many relevant environment APIs as possible. These APIs are similar to those available in other frameworks such as Node.js and in environments such as web browsers.
To use Azle, you must install the Azle dfx
extension with the command:
npx azle install-dfx-extension
Then, you can create new Azle projects using the npm azle new
command:
npx azle new my_project
Azle allows developers to bring their existing TypeScript and JavaScript skills and workflows to ICP, such as using npm packages and VS code intellisense.
Azle is a community contributed project and is not maintained by DFINITY. Azle is developed by Demergent Labs, a for-profit company that receives a grant from DFINITY for development of Azle.