Base art generator code is from hashlips_art_engine
Contract uses NFTPort
- Clone this repo or download the latest release zip file.
- Unzip, if needed, and open the folder in VS Code.
- From the terminal run:
cd backend
npm install
- Copy your image layers into the
/backend/layers
folder. - Use the
/backend/src/config.js
file to set up your layers and NFT information.
Generate:
$ npm run generate
- Generates unique images based on the layers in the
/backend/layers
folder. - WARNING: This command deletes the
/backend/build
folder if it exists!
Rarity (Hashlips):
$ npm run rarity
- Calculates the rarity of NFT properties based on layer files.
Rarity:
$ npm run rarity_md
- Calculates the rarity of NFT properties based on metadata.
Rarity Rank:
$ npm run rarity_rank
- Provides ranking details through a user interface after calculating using the codeSTACKr Rarity command.
Update Info:
$ npm run update_info
- Allows you to update
namePrefix
,description
, and/orbaseUri
for metadata after it was already generated.
Create Generic Metadata:
$ npm run create_generic
- Creates generic metadata using the settings from the
/backend/src/config.js
file.
Upload Files/Images:
$ npm run upload_files
- Uploads all files in the
/backend/build/images
folder.
Upload Metadata:
$ npm run upload_metadata
- Uploads all
.json
files in both the/backend/build/json
folder and, if it exists, the/backend/build/genericJson
folder as well.
Deploy Contract:
$ npm run deploy_contract
- Deploys a contract to the blockchain using the settings from the
/backend/src/config.js
file.
Get Contract:
$ npm run get_contract
- Gets the deployed contract details including the contracts ABI using the transactions hash from the Deploy Contract command.
Update Contract:
$ npm run update_public_mint_start_date
$ npm run update_presale_mint_start_date
$ npm run update_presale_whitelisted_addresses
$ npm run update_presale_whitelisted_addresses_remove
$ npm run update_royalty_share
$ npm run update_royalty_address
$ npm run update_base_uri
$ npm run update_prereveal_token_uri
- Updates specific fields of the contract using the settings from the
/backend/src/config.js
file. - Available fields to update:
prereveal_token_uri
- This will update the pre-reveal token uri for all NFTs. (Hidden image)base_uri
- This will update the base uri for all NFTs and reveal all.public_mint_start_date
- Eg: 2022-02-08T11:30:48+00:00presale_mint_start_date
- Eg: 2022-02-08T11:30:48+00:00presale_whitelisted_addresses
- Adds address(es) to the whitelistpresale_whitelisted_addresses_remove
- Removes address(es) from the whitelistroyalties_share
- Updates the royalty shareroyalties_address
- Updates the royalty wallet address
Refresh OpenSea:
$ npm run refresh_os --start=1 --end=100
- Refreshes the listing for the specified editions on OpenSea.
- Both the
--start
and--end
flags are required.
- Update the
frontend/js/abi.js
file with the ABI frombackend/build/contract/_contract_abi.json
. - Update your information in the
frontend/js/constants.js
file. - Deploy your dApp to Netlify. (Reference the video for full instructions.)