
Research
/Security News
DuckDB npm Account Compromised in Continuing Supply Chain Attack
Ongoing npm supply chain attack spreads to DuckDB: multiple packages compromised with the same wallet-drainer malware.
npm install tonweb
or yarn add tonweb
import TonWeb from "tonweb";
const tonweb = new TonWeb();
or
<script src="tonweb.js"></script>
const tonweb = new window.TonWeb();
npm install tonweb
or yarn add tonweb
const TonWeb = require('tonweb');
const tonweb = new TonWeb();
const tonweb = new TonWeb();
const wallet = tonweb.wallet.create({publicKey});
const address = await wallet.getAddress();
const nonBounceableAddress = address.toString(true, true, false);
const seqno = await wallet.methods.seqno().call();
await wallet.deploy(secretKey).send(); // deploy wallet to blockchain
const fee = await wallet.methods.transfer({
secretKey,
toAddress: 'EQDjVXa_oltdBP64Nc__p397xLCvGm2IcZ1ba7anSW0NAkeP',
amount: TonWeb.utils.toNano(0.01), // 0.01 TON
seqno: seqno,
payload: 'Hello',
sendMode: 3,
}).estimateFee();
const Cell = TonWeb.boc.Cell;
const cell = new Cell();
cell.bits.writeUint(0, 32);
cell.bits.writeAddress(address);
cell.bits.writeGrams(1);
console.log(cell.print()); // print cell data like Fift
const bocBytes = cell.toBoc();
const history = await tonweb.getTransactions(address);
const balance = await tonweb.getBalance(address);
tonweb.sendBoc(bocBytes);
By default, mainnet toncenter.com API is used. Please note that without the API key there will be a request rate limit.
You can start your own TON HTTP API instance as it is open source.
Use mainnet TonCenter API with high ratelimit API key:
const tonweb = new TonWeb(new TonWeb.HttpProvider('https://toncenter.com/api/v2/jsonRPC', {apiKey: 'YOUR_MAINNET_TONCENTER_API_KEY'}));
Use testnet TonCenter API with high ratelimit API key:
const tonweb = new TonWeb(new TonWeb.HttpProvider('https://testnet.toncenter.com/api/v2/jsonRPC', {apiKey: 'YOUR_TESTNET_TONCENTER_API_KEY'}));
Each part is documented separately:
tonweb - root class and methods
tonweb-contract-wallet - interaction with wallet's smart contracts.
tonweb-contract - abstract interface to interact with TON smart contracts.
tonweb-boc - serializations of Cell and BitString
tonweb-utils - work with TON Addresses, coin values, byte arrays, hex, hash functions.
Also we use JSDoc in code
Unit-tests
Typescript
npm install
npm run build
npm install -g tonweb
export NODE_PATH=$(npm root --quiet -g)
Then create your_script.js
const TonWeb = require('tonweb');
const tonweb = new TonWeb();
. . .
run script
node your_script.js
FAQs
TonWeb - JavaScript API for TON blockchain
The npm package tonweb receives a total of 50,039 weekly downloads. As such, tonweb popularity was classified as popular.
We found that tonweb demonstrated a not healthy version release cadence and project activity because the last version was released 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.
Research
/Security News
Ongoing npm supply chain attack spreads to DuckDB: multiple packages compromised with the same wallet-drainer malware.
Security News
The MCP Steering Committee has launched the official MCP Registry in preview, a central hub for discovering and publishing MCP servers.
Product
Socket’s new Pull Request Stories give security teams clear visibility into dependency risks and outcomes across scanned pull requests.