Overview of 0x Protocol Packages
developmentThe 0x protocol is an open protocol for the trustless exchange of Ethereum-based assets. This monorepo contains smart contracts and developer tools, with each public sub-package published independently to NPM.
Solidity Packages
These are primarily used for on-chain logic:
@0x/contracts-zero-ex: Contracts for settling trades within the protocol.@0x/contracts-erc20: Implementations of various ERC20 tokens.@0x/contracts-test-utils: TypeScript/Javascript utilities for testing contracts.@0x/contracts-utils: Generic libraries and utilities used across all contracts.
TypeScript/Javascript Packages
These are used for off-chain logic and interaction:
@0x/protocol-utils: Utilities for generating, parsing, signing, and validating 0x orders.@0x/contract-addresses: Utility for retrieving known deployed contract addresses for specific networks.@0x/contract-wrappers: JS/TS wrappers for interacting with 0x smart contracts.@0x/contract-artifacts: 0x smart contract compilation artifacts.