{"id":13746587,"url":"https://github.com/0xProject/protocol","last_synced_at":"2025-05-09T07:30:57.368Z","repository":{"id":37855786,"uuid":"305788335","full_name":"0xProject/protocol","owner":"0xProject","description":null,"archived":false,"fork":false,"pushed_at":"2024-06-29T01:02:38.000Z","size":150921,"stargazers_count":380,"open_issues_count":2,"forks_count":207,"subscribers_count":21,"default_branch":"development","last_synced_at":"2025-05-02T19:06:21.153Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/0xProject.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-10-20T17:45:11.000Z","updated_at":"2025-05-01T02:11:20.000Z","dependencies_parsed_at":"2023-02-16T10:46:08.037Z","dependency_job_id":"ccb091c6-655d-4917-929d-c45a7d0bc70f","html_url":"https://github.com/0xProject/protocol","commit_stats":{"total_commits":14934,"total_committers":143,"mean_commits":"104.43356643356644","dds":0.8090933440471407,"last_synced_commit":"f8dd7168eef3e0ddd18b33ddf7f9bade677e69ea"},"previous_names":[],"tags_count":5211,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xProject%2Fprotocol","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xProject%2Fprotocol/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xProject%2Fprotocol/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xProject%2Fprotocol/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/0xProject","download_url":"https://codeload.github.com/0xProject/protocol/tar.gz/refs/heads/development","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253193092,"owners_count":21869030,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-03T06:00:56.200Z","updated_at":"2025-05-09T07:30:52.351Z","avatar_url":"https://github.com/0xProject.png","language":"TypeScript","funding_links":[],"categories":["TypeScript","Decentralized Finance (DeFi)"],"sub_categories":[],"readme":"\u003cimg src=\"https://github.com/0xProject/branding/blob/master/0x%20Logo/PNG/0x-Logo-Black.png\" width=\"150px\" \u003e\n\n---\n\n[0x][website-url] is an open protocol that facilitates trustless, low friction exchange of Ethereum-based assets. For more information on how it works, check out the [0x protocol specification](https://protocol.0x.org/).\n\nThis repository is a monorepo including the 0x protocol smart contracts and numerous developer tools. Each public sub-package is independently published to NPM.\n\n[website-url]: https://0x.org\n\n[![Coverage Status](https://coveralls.io/repos/github/0xProject/protocol/badge.svg?branch=development)](https://coveralls.io/github/0xProject/protocol?branch=development)\n[![Discord](https://img.shields.io/badge/chat-discord.chat-yellow.svg?style=flat)](https://discordapp.com/invite/d3FTX3M)\n[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n\n## Packages\n\nVisit our [developer portal](https://0x.org/docs/) for a comprehensive list of core \u0026 community maintained packages. All packages maintained with this monorepo are listed below.\n\n### Solidity Packages\n\nThese packages are all under development. See [/contracts/README.md](/contracts/README.md) for a list of deployed packages.\n\n| Package                                             | Version                                                                                                                     | Description                                                          |\n| --------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------- |\n| [`@0x/contracts-zero-ex`](/contracts/zero-ex)       | [![npm](https://img.shields.io/npm/v/@0x/contracts-zero-ex.svg)](https://www.npmjs.com/package/@0x/contracts-zero-ex)       | The contracts used for settling trades within the protocol           |\n| [`@0x/contracts-erc20`](/contracts/erc20)           | [![npm](https://img.shields.io/npm/v/@0x/contracts-erc20.svg)](https://www.npmjs.com/package/@0x/contracts-erc20)           | Implementations of various ERC20 tokens                              |\n| [`@0x/contracts-test-utils`](/contracts/test-utils) | [![npm](https://img.shields.io/npm/v/@0x/contracts-test-utils.svg)](https://www.npmjs.com/package/@0x/contracts-test-utils) | TypeScript/Javascript shared utilities used for testing contracts    |\n| [`@0x/contracts-utils`](/contracts/utils)           | [![npm](https://img.shields.io/npm/v/@0x/contracts-utils.svg)](https://www.npmjs.com/package/@0x/contracts-utils)           | Generic libraries and utilities used throughout all of the contracts |\n\n### TypeScript/Javascript Packages\n\n#### 0x-specific packages\n\n| Package                                                  | Version                                                                                                                 | Description                                                                                    |\n| -------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |\n| [`@0x/protocol-utils`](/packages/protocol-utils)         | [![npm](https://img.shields.io/npm/v/@0x/protocol-utils.svg)](https://www.npmjs.com/package/@0x/protocol-utils)         | A set of utilities for generating, parsing, signing and validating 0x orders                   |\n| [`@0x/contract-addresses`](/packages/contract-addresses) | [![npm](https://img.shields.io/npm/v/@0x/contract-addresses.svg)](https://www.npmjs.com/package/@0x/contract-addresses) | A tiny utility library for getting known deployed contract addresses for a particular network. |\n| [`@0x/contract-wrappers`](/packages/contract-wrappers)   | [![npm](https://img.shields.io/npm/v/@0x/contract-wrappers.svg)](https://www.npmjs.com/package/@0x/contract-wrappers)   | JS/TS wrappers for interacting with the 0x smart contracts                                     |\n| [`@0x/contract-artifacts`](/packages/contract-artifacts) | [![npm](https://img.shields.io/npm/v/@0x/contract-artifacts.svg)](https://www.npmjs.com/package/@0x/contract-artifacts) | 0x smart contract compilation artifacts                                                        |  |\n\n## Usage\n\nNode version 6.x or 8.x is required.\n\nMost of the packages require additional typings for external dependencies.\nYou can include those by prepending the `@0x/typescript-typings` package to your [`typeRoots`](http://www.typescriptlang.org/docs/handbook/tsconfig-json.html) config.\n\n```json\n\"typeRoots\": [\"node_modules/@0x/typescript-typings/types\", \"node_modules/@types\"],\n```\n\n## Contributing\n\nWe strongly recommend that the community help us make improvements and determine the future direction of the protocol. To report bugs within this package, please create an issue in this repository.\n\n#### Read our [contribution guidelines](.github/CONTRIBUTING.md).\n\n### Install dependencies\n\nMake sure you are using Yarn v1.9.4. To install using brew:\n\n```bash\nbrew install yarn@1.9.4\n```\n\nThen install dependencies\n\n```bash\nyarn install\n```\n\n### Build\n\nTo build all packages:\n\n```bash\nyarn build\n```\n\nTo build a specific package:\n\n```bash\nPKG=@0x/protocol-utils yarn build\n```\n\nTo build all contracts packages:\n\n```bash\nyarn build:contracts\n```\n\n### Watch\n\nTo re-build all packages on change:\n\n```bash\nyarn watch\n```\n\nTo watch a specific package and all it's dependent packages:\n\n```bash\nPKG=[NPM_PACKAGE_NAME] yarn watch\n\ne.g\nPKG=@0x/protocol-utils yarn watch\n```\n\n### Clean\n\nClean all packages:\n\n```bash\nyarn clean\n```\n\nClean a specific package\n\n```bash\nPKG=@0x/protocol-utils yarn clean\n```\n\n### Rebuild\n\nTo re-build (clean \u0026 build) all packages:\n\n```bash\nyarn rebuild\n```\n\nTo re-build (clean \u0026 build) a specific package \u0026 it's deps:\n\n```bash\nPKG=@0x/protocol-utils yarn rebuild\n```\n\n### Lint\n\nLint all packages:\n\n```bash\nyarn lint\n```\n\nLint a specific package:\n\n```bash\nPKG=@0x/protocol-utils yarn lint\n```\n\n### Run Tests\n\nRun all tests:\n\n```bash\nyarn test\n```\n\nRun a specific package's test:\n\n```bash\nPKG=@0x/protocol-utils yarn test\n```\n\nRun all contracts packages tests:\n\n```bash\nyarn test:contracts\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F0xProject%2Fprotocol","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F0xProject%2Fprotocol","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F0xProject%2Fprotocol/lists"}