ink-examples
ink-examples copied to clipboard
A set of examples for ink! smart contract language. Happy hacking!
This repository contains a set of example contracts for ink!.
Have a look at the different examples to better understand how to use ink! to build your own Substrate smart contracts.
Can I add a new example here?
Please don't add them here, but create a Pull Request to the integration-tests/public folder in the ink! repository instead.
The content of that folder is synchronized with this repository on new releases.
Preparation
For building the example smart contracts found in this folder you will need to have cargo-contract installed.
cargo install cargo-contract --force
We use the --force to update to the most recent cargo-contract version.
Build example contract and generate the contracts metadata
To build a single example and generate the contracts Wasm file, navigate to the root of the smart contract and run the following command:
cargo contract build
You should now have an optimized <contract-name>.wasm file, a metadata.json file and a <contract-name>.contract file in the target folder of your contract.
The .contract file combines the Wasm and metadata into one file and can be used for instantiation.
Running front end dApp examples
- Install nodejs and then install pnpm
npm install -g pnpm - Install dependencies
pnpm i - Run each example with
pnpm <contract-example-name>. e.g.pnpm flipper - Visit http://localhost:5173 in your browser.
Commands
pnpm basic-contract-callerpnpm contract-terminatepnpm contract-transferpnpm erc20pnpm erc721pnpm flipperpnpm incrementer
All examples are built with useink, a React hooks library built by the ink! team.
License
The examples in this folder are released into the public domain. We hope they help you build something great with ink!.
See the LICENSE file in this folder for more details.