New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More ā†’
Socket
Sign inDemoInstall
Socket

@0x/0x-parser

Package Overview
Dependencies
Maintainers
9
Versions
45
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@0x/0x-parser

šŸ§¾ Designed for 0x integrators: This library parses 0x transactions on EVM blockchains into a format that is both user-friendly and easy to understand.

  • 0.5.1
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
316
decreased by-3.36%
Maintainers
9
Weekly downloads
Ā 
Created
Source

0x-parser

npm version codecov build and test Medium

Blockchain Support

arbitrumavalanchebasebnb chainceloethereumfantomoptimismpolygon
ArbitrumAvalancheBaseBNB ChainCeloEthereumFantomOptimismPolygon

Overview

This library is designed for 0x integrators, and it simplifies the complex task of parsing 0x transactions into a format that is both user-friendly and easy to understand. One of the challenges when swapping tokens is that the trade can experience slippage through Automated Market Makers (AMMs), making the final swap amounts difficult to predict prior to executing the trade. However, this library overcomes that challenge by parsing the transaction receipt and event logs to accurately identify the final swap amounts. Try the demo here.

Screenshot of demo app using 0x-parser

Installation

npm install @0x/0x-parser

Usage

import { parseSwap } from "@0x/0x-parser";

async function main() {
  const response = await fetch(
    "https://raw.githubusercontent.com/0xProject/protocol/development/packages/contract-artifacts/artifacts/IZeroEx.json"
  );

  const IZeroEx = await response.json();

  const data = await parseSwap({
    rpcUrl: "https://eth.llamarpc.com",
    exchangeProxyAbi: IZeroEx.compilerOutput.abi,
    transactionHash: "0xd8637124d650268ae7680781809800e103a3a2bee9fec56083028fea6d98140b",
  });

  console.log(data);
}

main();

Bundle Size

This package directly integrates the latest version of Ethers.js, a decision driven by the rapid and often inconsistent upgrade patterns observed in some web3 codebases. This decision simplifies the source code by eliminating the need to support multiple versions of Ethers.js. However, it may lead to redundancy if you're already using the provider and contract modules in the latest Ethers.js version. This redundancy, though, might not affect your application.

The impact this library may have on your app's bundle size varies depending on the context. It's not a concern for server-side scripts, but could influence the initial bundle size of client-side browser applications. Given this library tree-shakes Ethers.js dependencies, it's beneficial to use lazy loading to prevent an increase in your client application's initial bundle size. For a demonstration of lazy loading the library, refer to the example available here.

Examples

This repository includes examples you can execute locally. Navigate to the /examples directory for additional README information on how to run the demos locally. You can also explore a live demo of 0x-parser here.

Contributing

Contributions are always welcomed! Please read the contributing guidelines before submitting a pull request.

Keywords

FAQs

Package last updated on 21 Aug 2023

Did you know?

Socket

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with āš”ļø by Socket Inc