![Create React App Officially Deprecated Amid React 19 Compatibility Issues](https://cdn.sanity.io/images/cgdhsj6q/production/04fa08cf844d798abc0e1a6391c129363cc7e2ab-1024x1024.webp?w=400&fit=max&auto=format)
Security News
Create React App Officially Deprecated Amid React 19 Compatibility Issues
Create React App is officially deprecated due to React 19 issues and lack of maintenance—developers should switch to Vite or other modern alternatives.
TronWeb is a JavaScript library that provides a comprehensive set of tools for interacting with the TRON blockchain. It allows developers to create, deploy, and interact with smart contracts, manage accounts, and perform transactions on the TRON network.
Account Management
This feature allows you to manage TRON accounts, including retrieving account information such as balance and transaction history. The code sample demonstrates how to initialize TronWeb and fetch account details using an address.
const TronWeb = require('tronweb');
const tronWeb = new TronWeb({
fullHost: 'https://api.trongrid.io',
privateKey: 'your_private_key'
});
async function getAccountInfo(address) {
const accountInfo = await tronWeb.trx.getAccount(address);
console.log(accountInfo);
}
getAccountInfo('your_tron_address');
Smart Contract Interaction
TronWeb allows you to interact with smart contracts on the TRON network. This code sample shows how to call a method on a deployed smart contract by specifying the contract address, method name, and parameters.
const TronWeb = require('tronweb');
const tronWeb = new TronWeb({
fullHost: 'https://api.trongrid.io',
privateKey: 'your_private_key'
});
async function callContractMethod(contractAddress, methodName, parameters) {
const contract = await tronWeb.contract().at(contractAddress);
const result = await contract[methodName](...parameters).call();
console.log(result);
}
callContractMethod('contract_address', 'methodName', ['param1', 'param2']);
Transaction Management
This feature enables you to manage transactions on the TRON network, including sending TRX tokens. The code sample demonstrates how to send a transaction to a specified address with a given amount.
const TronWeb = require('tronweb');
const tronWeb = new TronWeb({
fullHost: 'https://api.trongrid.io',
privateKey: 'your_private_key'
});
async function sendTransaction(to, amount) {
const transaction = await tronWeb.trx.sendTransaction(to, amount);
console.log(transaction);
}
sendTransaction('recipient_address', 1000);
Web3.js is a popular JavaScript library for interacting with the Ethereum blockchain. It provides similar functionalities to TronWeb, such as account management, smart contract interaction, and transaction handling, but is specifically designed for Ethereum. While TronWeb is tailored for the TRON network, Web3.js is the go-to library for Ethereum developers.
Ethers.js is another JavaScript library for Ethereum, offering a more lightweight and modular approach compared to Web3.js. It provides similar functionalities to TronWeb but focuses on Ethereum. Ethers.js is known for its simplicity and ease of use, making it a popular choice among Ethereum developers.
TronWeb aims to deliver a unified, seamless development experience influenced by Ethereum's Web3 implementation. We have taken the core ideas and expanded upon it to unlock the functionality of TRON's unique feature set along with offering new tools for integrating DApps in the browser, Node.js and IoT devices.
You can access either version specifically from the dist folder.
TronWeb is also compatible with frontend frameworks such as:
You can also ship TronWeb in a Chrome extension.
npm install tronweb
or
yarn add tronweb
First, don't use the release section of this repo, it has not updated in a long time.
Then easiest way to use TronWeb in a browser is to install it as above and copy the dist file to your working folder. For example:
cp node_modules/tronweb/dist/TronWeb.js ./js/tronweb.js
so that you can call it in your HTML page as
<script src="./js/tronweb.js"><script>
Shasta is the official Tron testnet. To use it use the following endpoint:
https://api.shasta.trongrid.io
Get some Shasta TRX at https://www.trongrid.io/shasta and play with it. Anything you do should be explorable on https://shasta.tronscan.org
You can set up your own private network, running Tron Quickstart. To do it you must install Docker and, when ready, run a command like
docker run -it --rm \
-p 9090:9090 \
-e "defaultBalance=100000" \
-e "showQueryString=true" \
-e "showBody=true" \
-e "formatJson=true" \
--name tron \
trontools/quickstart
More details about Tron Quickstart on GitHub
First off, in your javascript file, define TronWeb:
const TronWeb = require('tronweb')
When you instantiate TronWeb you can define
you can also set a
which works as a jolly. If you do so, though, the more precise specification has priority. Supposing you are using a server which provides everything, like TronGrid, you can instantiate TronWeb as:
const tronWeb = new TronWeb({
fullHost: 'https://api.trongrid.io',
privateKey: 'your private key'
})
For retro-compatibility, though, you can continue to use the old approach, where any parameter is passed separately:
const tronWeb = new TronWeb(fullNode, solidityNode, eventServer, privateKey)
If you are, for example, using a server as full and solidity node, and another server for the events, you can set it as:
const tronWeb = new TronWeb({
fullHost: 'https://api.trongrid.io',
eventServer: 'https://api.someotherevent.io',
privateKey: 'your private key'
}
)
If you are using different servers for anything, you can do
const tronWeb = new TronWeb({
fullNode: 'https://some-node.tld',
solidityNode: 'https://some-other-node.tld',
eventServer: 'https://some-event-server.tld',
privateKey: 'your private key'
}
)
The better way to understand how to work with Tron is to clone the MetaCoin example and follow the instructions at https://github.com/Tronbox-boxes/metacoin-box
In order to contribute you can
npm i
npm run build
npm test:node
3.2.5
3.2.4
3.2.3
3.2.2
createToken
method supports 0 in its precision3.1.0
elliptic
to the latest version 6.5.3ethers
to the latest version 5.0.8loadAbi()
3.0.0
2.10.2
2.10.1
trx.listExchangesPaginated
2.10.0
trx.getTokenListByName
2.9.0
2.8.1
keepTxID
to show also the txID when triggering a contract with shouldPollResponse
2.8.0
2.7.4
2.7.3
2.6.8
2.6.3
2.6.0
2.5.6
2.5.5
receiverAddress
during freezeBalance
and unfreezeBalance
if it is equal to the owner address2.5.4
2.5.2
Trx.signString
and `Trx.verifySignature2.5.0
2.3.7
2.3.6
/wallet/getapprovedlist
and /wallet/getsignweight
JavaTron API.2.3.5
#event.getEventsByContractAddress
naming.2.3.4
#plugin.register
to pass parameters to pluginInterface
.2.3.3
2.3.2
2.3.1
2.3.0
fullNode
, solidityNode
and eventServer
as separate params_watch
which causes a continuous update of the since
parameterTronWeb is distributed under a MIT licence.
For more historic data, check the original repo at https://github.com/tronprotocol/tron-web
FAQs
JavaScript SDK that encapsulates the TRON HTTP API
The npm package tronweb receives a total of 18,709 weekly downloads. As such, tronweb popularity was classified as popular.
We found that tronweb demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Create React App is officially deprecated due to React 19 issues and lack of maintenance—developers should switch to Vite or other modern alternatives.
Security News
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Security News
The Linux Foundation is warning open source developers that compliance with global sanctions is mandatory, highlighting legal risks and restrictions on contributions.