The Everlazaar is a decentralized career social creation publishing platform.
Everlazaar is described by one smart contract:
Everlazaar.sol
- Responsible for managing creation publishing & NFT minting.
Everlazaar is using an external ERC20 based token, we called KMC, as the native token of Everlazaar.
Everlazaar is using a ERC1155 based contract to mint creation NFT.
To install this project run npm install
.
Before run test, make sure a local hardhat node was running.
npx hardhat node
For Everlazaar unit test, you could run the hardhat test command.
npx hardhat test
This project includes Hardhat tasks for deploying and using Everlazaar.
Follow these instructions to deploy a new instance:
- Edit
hardhat.config.js
, setting the values forINFURA_API_KEY
andMAINNET_PRIVATE_KEY
. - Edit
deployment-params.js
, setting your desired deployment parameters. - Run
npx hardhat deploy-all-proxy --network mainnet
. - Edit
hardhat.config.js
, setting the address of the Everlazaar innetworks.mainnet.deployedContracts.mainContract
.
This project has tasks to work with Everlazaar contracts. To use them, you should first follow these instructions:
- Edit
hardhat.config.js
, setting the values forINFURA_API_KEY
andMAINNET_PRIVATE_KEY
. - Make sure you have the right address in
hardhat.config.js
'snetworks.mainnet.deployedContracts.mainContract
field. - Add
--network network-name
parameter to specify the blockchain when using below hardhat tasks.
npx hardhat deploy-all-proxy (--network localhost)
npx hardhat deposit --amount 0.002
npx hardhat withdraw --amount 1
npx hardhat set-article-deposit --amount 0.02
npx hardhat set-mint-deposit --amount 0.2
npx hardhat debug
npx hardhat permit-approve --amount 1
npx hardhat permit-create-article
npx hardhat permit-mint --article-contract-id 1 --amount 3
- Ensure the
newContractName
is correct. - Add
--network network-name
parameter to specify the blockchain when using below hardhat tasks.
npx hardhat upgrade-contract --new-contract-name Everlazaar --new-contract-version 2 (--network localhost)
npx hardhat upgrade-contract --new-contract-name ElzToken1155 --new-contract-version 2 (--network localhost)
npx hardhat upgrade-contract --new-contract-name KmcToken --new-contract-version 2 (--network localhost)