Azle helps you to build secure decentralized/replicated servers in TypeScript or JavaScript on ICP. The current replication factor is 13-40 times.
Azle stable mode is continuously subjected to intense scrutiny and testing, however it does not yet have multiple independent security reviews/audits.
Azle runs in stable mode by default.
This mode is intended for production use after Azle's 1.0 release. Its focus is on API and runtime stability, security, performance, TypeScript and JavaScript language support, the ICP APIs, and Candid remote procedure calls (RPC). There is minimal support for the Node.js standard library, npm ecosystem, and HTTP server functionality.
Windows is only supported through a Linux virtual environment of some kind, such as WSL
You will need Node.js 22 and dfx to develop ICP applications with Azle:
It's recommended to use nvm to install the latest LTS version of Node.js:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.2/install.sh | bashRestart your terminal and then run:
nvm install --ltsCheck that the installation went smoothly by looking for clean output from the following command:
node --versionInstall the dfx command line tools for managing ICP applications:
DFX_VERSION=0.25.0 sh -ci "$(curl -fsSL https://internetcomputer.org/install.sh)"Check that the installation went smoothly by looking for clean output from the following command:
dfx --versionTo create and deploy a simple sample application called hello_world:
# create a new default project called hello_world
npx azle new hello_world
cd hello_world# install all npm dependencies including azle
npm install# start up a local ICP replica
dfx start --cleanIn a separate terminal in the hello_world directory:
# deploy your canister
dfx deployIf you would like to run the included test suite:
# start up a local ICP replica
dfx start --cleanIn a separate terminal in the hello_world directory:
npm test