This project demonstrates how to use LSP7 or LSP8 to create a basic NFT collection on LUKSO using the @lukso/lsp-smart-contracts
;
- Event Tickets as NFTs (LSP7 non divisible)
- Digital Trading Cards (LSP7 non divisible)
- Basic NFT Collection (using LSP8)
- Dynamic NFT Collection & Metadata Contract per NFT
- Digital Stickers Collections that contains sub-collections
- News Subscriptions
- Token Blacklist Registry
- Delegated Voting
This project is based on the following configs.
- Hardhat v2.18.2
- Ethers v6
- Artifacts generated by Typechain
Make sure you are using node js v16.20. You can set this up with nvm.
nvm install 16.20
nvm use 16.20
You can clone the repository and install its dependencies.
git clone https://github.com/CJ42/LUKSO-Hardhat-template.git
cd LUKSO-Hardhat-Template
yarn
You can run some of the example scripts under the scripts/
folder. To do so, create a .env
file and add your private key.
cp .env.example .env
PRIVATE_KEY="0x<your-private-key>"
You can then run one of the following scripts as follow, specify the --network luksoTestnet
flag to deploy on Testnet.
npx hardhat run scripts/deployAndSetCollectionMetadata.ts --network luksoTestnet
npx hardhat run scripts/deployCollectionAndSetBaseURI.ts --network luksoTestnet
npx hardhat run scripts/mintTickets.ts --network luksoTestnet
npx hardhat run ./scripts/getAssetMetadata.ts --network luksoTestnet