Skip to content

Morgosh/zkMarketsContracts

Repository files navigation

zkMarkets contracts

Project Layout

  • /contracts: Contains solidity smart contracts.
  • /deploy: Scripts for contract deployment and interaction.
  • /test: Test files.
  • hardhat.config.ts: Configuration settings.

How to Use

  • npm run compile: Compiles contracts.
  • npm run deploy: Deploys using script /deploy/deploy.ts.
  • npm run interact: Interacts with the deployed contract using /deploy/interact.ts.
  • npm run test: Tests the contracts.

Note: Both npm run deploy and npm run interact are set in the package.json. You can also run your files directly, for example: npx hardhat deploy-zksync --script deploy.ts

Environment Settings

To keep private keys safe, this project pulls in environment variables from .env files. Primarily, it fetches the wallet's private key.

Rename .env.example to .env and fill in your private key:

WALLET_PRIVATE_KEY=your_private_key_here...

Network Support

hardhat.config.ts comes with a list of networks to deploy and test contracts. Add more by adjusting the networks section in the hardhat.config.ts. To make a network the default, set the defaultNetwork to its name. You can also override the default using the --network option, like: hardhat test --network dockerizedNode.

Local Tests

Running npm run test by default runs hardhat tests

Running npm run testzk runs the zkSync In-memory Node provided by the @matterlabs/hardhat-zksync-node tool.

Important: zkSync In-memory Node currently supports only the L2 node. If contracts also need L1, use another testing environment like Dockerized Node. Refer to test documentation for details.

Useful Links

License

This project is under the business license

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published