The JavaScript SDK for interacting with Hedera Hashgraph: the official distributed consensus platform built using the hashgraph consensus algorithm for fast, fair and secure transactions. Hedera enables and empowers developers to build an entirely new class of decentralized applications.
NOTE: v1 of the SDK is deprecated and support will be discontinued after October 2021. Please install the latest version 2.x or migrate from v1 to the latest 2.x version. You can reference the migration documentation.
# with NPM
$ npm install --save @hashgraph/sdk
# with Yarn
$ yarn add @hashgraph/sdk
# with PNPM
$ pnpm add @hashgraph/sdk
- Taskfile tool installation
- Node.js: It is recommended to use Node.js v20 or higher for best performance and compatibility. The package may also work with Node.js v16, but this version has not been officially tested.
# with npm
$ npm install -g @go-task/cli
# with homebrew
$ brew install go-task
- pNpm package manager installation
# with npm
$ npm install -g pnpm
# with homebrew
$ brew install pnpm
After downloading the repo run:
-
task install
-
task build
to build the SDK
The Hedera JavaScript SDK supports the following:
- React Native with Expo - keep in mind that the SDK uses some functionalities provided from ethers/ethersproject and there is an issue using parts of ethers.js in this environment. A shims package has to be installed and imported before importing the SDK in your project as it is showed here
- Useful information: here and here
The Hedera JavaScript SDK does not currently support the following:
- React Native Bare
See examples.
Every example can be executed using the following command from the root directory: node examples/[name-of-example].js
- To start the integration tests follow the next steps:
- Run the local node
- Run
task test:integration:node
- Stop the local node
- To start unit tests follow the next steps:
- Run
task test:unit
(Note: the local node should not be running)
- Run
We welcome participation from all developers! For instructions on how to contribute to this repo, please review the Contributing Guide.
Licensed under Apache License, Version 2.0 – see LICENSE in this repo or apache.org/licenses/LICENSE-2.0.