This project was generated with freshmint.
This project requires the Flow CLI and Docker.
Now install the project and its dependencies:
npm installThis project uses the Flow emulator for rapid local development.
docker-compose up -dEnsure you run the remaining commands from your new project's directory.
fresh deployThis command mints the NFTs declared in nfts.csv. Edit that file to add your own NFTs!
Notes:
-
The metadata in the CSV is compatible with OpenSea's NFT standard. Freshmint does not enforce any standard metadata, but it is reccomended you consider using a standard format.
-
Only the image property is required, and it's value must be the name of a file in the assets/images directory of your project.
fresh mintUse the claim flag to create claim keys for your minted NFTs.
Each NFT gets a unique claim key.
Give a key to a user to allow them to claim that NFT.
fresh mint --claimView the metadata for a single NFT.
fresh inspect 0After you mint your NFTs, you'll need to pin the metdata to IPFS so that it's available to the world.
Hint: you can implement a blind drop by pinning the metadata after your drop completes.
Freshmint is compatible with NFT.Storage, Pinata and any other pinning service that implements the IPFS Remote Pinning API.
First configure your pinning service by editing .env:
-
NFT.Storage
Create a free NFT.Storage account to get an API key.
# .env PINNING_SERVICE_ENDPOINT="https://nft.storage/api" PINNING_SERVICE_KEY="Paste your nft.storage JWT token here!"
Use the pin command to pin an NFT by ID.
fresh pin 0Start an NFT drop. This will start a new drop that lists all the NFTs currently minted. Use the price argument to set the price of each NFT in FLOW.
fresh start-drop 10.0Remove a drop. Once your drop is sold out, run this command to remove it.
fresh remove-dropThis is the last step! Run this command to launch the UI for you NFT project.
npm run devGenerate a new key pair for your testnet admin account:
flow keys generateSave the private key to your .env file:
# .env
FLOW_TESTNET_PRIVATE_KEY=xxxxUse the Flow Faucet to create a new account with the public key.
Save the resulting address to your .env file:
# .env
FLOW_TESTNET_ADDRESS=xxxxYou can now run the project commands with the testnet flag:
fresh deploy --network testnetfresh mint --network testnet
fresh start-drop 10.0 --network testnet
fresh stop-drop --network testnetNETWORK=testnet npm run dev