npm.io
0.2.56 • Published 3 weeks ago

dequanto

Licence
—
Version
0.2.56
Deps
14
Size
34.6 MB
Vulns
0
Weekly
0
Stars
99

dequanto

Documentation CircleCI NPM version

dequanto

dequanto is a TypeScript toolkit for EVM development. It can generate typed contract clients from ABI or Solidity sources, submit and monitor transactions, query RPC nodes, read blockchain explorer data, index events, and work with common Ethereum data formats.

The library can be used at different abstraction levels:

  • Use generated contract classes for typed calls, transactions, and event parsing
  • Use RPC clients directly when you need low-level node access
  • Use transaction builders for fine-grained signing and submission flows
  • Use storage, ABI, and bytecode utilities when inspecting contracts or chain data

Features

Typed Contract Clients

Generate ES6/TypeScript classes from ABI, compiled artifacts, Solidity files, or verified source code fetched from blockchain explorers. Generated clients can call read methods, submit transactions, parse logs, and expose typed helpers around contract metadata.

RPC Clients

Connect to one or more blockchain nodes through a shared client layer. The RPC client supports node pools, request balancing, throttling, rate limits, and automatic retries.

Transactions

Build, sign, submit, and wait for transactions with lower-level control over transaction data. The transaction layer also includes support for Gnosis Safe, Account Abstraction, and Flashbots flows.

Explorer Integration

Use Etherscan-compatible explorers and related APIs to fetch ABIs, source code, contract creation metadata, token data, and other chain information.

Event Indexing

Fetch and persist contract events with resumable progress. The event indexer is designed for long-running indexing jobs that need file-backed state.

Watchers

Subscribe to contract events and monitor transactions in real time.

Numeric Utilities

Work with native bigint values and BigFloat helpers for mantissa-based math.

Prebuilt Contracts

Use pre-generated TypeScript wrappers for commonly used contracts, including OpenZeppelin contracts.

Installation

Install the package from npm:

npm i dequanto

The package ships with:

  • CommonJS files under node_modules/dequanto/lib/cjs
  • ESM files under node_modules/dequanto/lib/esm
  • TypeScript declarations under node_modules/dequanto/lib/types
  • TypeScript sources under node_modules/dequanto/src

Node and build tools can resolve the correct entry point through the package exports.

0xweb CLI

You can also use the 0xweb CLI to generate contract clients and install contract dependencies.

Configuration

dequanto includes default configuration for several chains and Safe infrastructure. For project-specific settings, add RPC URLs, explorer API keys, and other overrides through YAML config files.

Development

Useful repository commands:

npm run typecheck
npm run build
npm test

The main validation command for TypeScript changes is:

npm run typecheck -- --pretty false

Documentation

Full documentation is available at:

https://docs.0xweb.org/dequanto

License

Copyright (c) 2026 0xweb.org