Documentation
Deprecation of Hethers.js by October 20, 2023
As we continue to evolve and improve the Hedera ecosystem, we are committed to ensuring that our developer tools and resources remain easy to use and up-to-date. With this goal in mind, the Hethers.js library will be deprecated by October 20, 2023.
🚨 The documentation site will be taken offline on January 31, 2024.
What is hethers?
Hethers is a complete and compact library for interacting with the Hedera Hashgraph and more specifically the Smart Contract Service. It is a fork of The Ethers Project and implements the same program interface as ethers.js with some minor changes.
Features
Keep your private keys in your client, safe and sound
Import and export JSON wallets
Import and export BIP 39 mnemonic phrases (12-word backup phrases) and HD Wallets (English as well as Czech, French, Italian, Japanese, Korean, Simplified Chinese, Spanish, Traditional Chinese)
Meta-classes create JavaScript objects from any contract ABI, including ABIv2 and Human-Readable ABI
Connect to the Hedera Network over both Consensus and Mirror nodes.
Modular packages; include only what you need
Extensive documentation
Large collection of test cases which are maintained and added to
Fully TypeScript ready, with definition files and full TypeScript source
MIT License (including ALL dependencies); completely open-source to do with as you please
Migration from other EVM based chains
This document covers the features present in the ethers
library, which has changed in some important way in the hethers
library.
General / Conceptual changes
Two endpoints (APIs) are utilised by the
provider
instance -> Hedera Consensus Nodes & Hedera Mirror Nodes.Gas estimates are not supported as of now. You must provide the gas limit manually. More information on gas limits can be found here.
Gas Price is not specified by clients. The Hedera network computes the necessary
gasPrice
during transaction execution. More info here.Static calls are executed against Hedera Consensus Nodes and are paid, thus must be signed by an already existing Account.
static
calls create ContractLocalCall transactions.Account creation happens on-chain. You cannot create a random hedera account by generating a pub key. Accounts must be explicitly created or implicitly using HIP-32.
All
address
properties are replaced withaccountLike
properties to support both Hedera like accounts (shard.realm.num
) and native EVM addresses.The transaction identifier is not
transactionHash
buttransactionId
, thus every function usingtransactionHash
is replaced withtransactionId
There is no concept of blocks, thus
block
related queries for filters/events or provider polling is replaced withtimestamp
based.
Developer Documentation
Documentation Getting Started Application Programming Interface Providers Provider Accounts Methods Logs Methods Network Status Methods Transactions Methods Event Emitter Methods Base Provider Types Signers Contract Interaction Contract ContractFactory Example: ERC-20 Contract Utilities Accounts Addresses Application Binary Interface AbiCoder ABI Formats Fragmets Interface BigNumber Byte Manipulation Constants Display Logic and Input Encoding Utilities FixedNumber Hashing Algorithms HD Wallet Logging Property Utilities Signing Key Strings Transactions Web Utilities Wordlists Contributing Other Resources
Last updated