Basic Sample Hardhat Project - with Starknet Plugin
November 27, 2023 ยท View on GitHub
This project demonstrates a basic Hardhat project, but with Starknet plugin.
Get started
Clone this repo
git clone git@github.com:0xSpaceShard/starknet-hardhat-example.git
cd starknet-hardhat-example
Install dependencies
npm ci
Compile a contract
npx hardhat starknet-compile cairo1-contracts/contract1.cairo --single-file
Compile a deprecated (Cairo 0) contract
npx hardhat starknet-compile-deprecated contracts/contract.cairo
Set up environment variables
Some scripts require environment variables (search for usage of ensureEnvVar in the repo). You can define these variables in an .env file in the project root.
Run a test that interacts with the compiled contract
npx hardhat test test/quick-test.ts
Supported starknet-hardhat-plugin version
package.json is fixed to use the latest starknet-hardhat-plugin version this example repository is synced with.
Troubleshooting
If you're having issues trying to use this example repo with the Starknet plugin, try running npm install or npm update, as it may be due to version mismatch in the dependencies.
Branches
master- latest stable examplesplugin- used for testing by Starknet Hardhat Plugin
Branch updating (for developers)
- New PRs and features should be targeted to the
pluginbranch. - After releasing a new plugin version,
mastershould ideally be reset (fast forwarded) toplugin(less ideally merged).