Compiling your contracts
Compiling contracts can be done using the command wasmkit compile.
Compile all contracts
wasmkit compile
It compiles all the contracts in the contracts/ directory. For each contract compiled, corresponding .wasm file is stored in the artifacts/contracts directory created in project's root directory.
Compile specific contract
To compile only one contract or a subset of all contracts in the contract/ directory, use:
wasmkit compile <sourcePaths>
Compile one contract:
wasmkit compile contracts/counter
Compile multiple contracts:
wasmkit compile contracts/counter contracts/cw20
Schema generation
Schema is also generated alongside the compiled .wasm file for each of the contract compiled using wasmkit compile command. Schema files are .json files stored inside artifacts/schema/ directory.
In the typescript_schema directory of artifacts/, the typescript classes for each of the contracts' client object which can be imported into scripts and tests (.ts) as seen in the samples.
Single contract artifacts/ directory structure:
artifacts├── contracts│ └── counter.wasm├── schema│ └── counter│ ├── execute_msg.json│ ├── instantiate_msg.json│ └── query_msg.json└── typescript_schema └── CounterContract.ts5 directories, 5 files
To skip schema generation while compiling, use:
wasmkit compile --skip-schema