@0x/contracts-gen
v2.0.51
Published
Generates boilerplate code for smart contracts packages
Downloads
830
Keywords
Readme
Contracts Gen
This package allows you to generate boilerplate TypeScript code and configs for smart contracts packages.
Installation
yarn add -g @0x/contracts-gen
Usage
Run it from within your smart contracts packages.
contracts-gen
You should run this tool after each time you move your contracts around to regenerate boilerplate code and configs.
What can it generate
This tool does the following:
- Reads your
compiler.json
. Specifically the list of smart contracts. - Creates
wrapper.ts
file which exports all contract wrappers. - Creates
artifacts.ts
file which exports all contract artifacts. - Generates list of JSON artifact files in
tsconfig.json
- Generates a glob for abi-gen in
package.json
On top of that - if your compiler.json
has contracts referenced just by name - it will resolve the name to relative path and put it there.
It also sorts all the lists in it's output leading to smaller and cleaner diffs.
Contributing
We welcome improvements and fixes from the wider community! To report bugs within this package, please create an issue in this repository.
Please read our contribution guidelines before getting started.
Install dependencies
If you don't have yarn workspaces enabled (Yarn < v1.0) - enable them:
yarn config set workspaces-experimental true
Then install dependencies
yarn install
Build
To build this package and all other monorepo packages that it depends on, run the following from the monorepo root directory:
PKG=@0x/contracts-gen yarn build
Or continuously rebuild on change:
PKG=@0x/contracts-gen yarn watch
Clean
yarn clean
Lint
yarn lint