A simple ERC721 NFT smart contract built in Solidity using OpenZeppelin.
This contract lets anyone mint unique NFTs with custom metadata URIs.
- Built on ERC721 standard
- Mint NFTs with custom metadata URIs (e.g. IPFS, Arweave)
- Sequential token IDs using a counter
- Custom
tokenURImapping to store metadata
- Solidity
^0.8.18 - Foundry (Forge & Cast)
- OpenZeppelin Contracts
- SVG images encoded as URIs
Foundry is a blazing fast, portable and modular toolkit for Ethereum application development written in Rust.
Foundry consists of:
- Forge: Ethereum testing framework (like Truffle, Hardhat and DappTools).
- Cast: Swiss army knife for interacting with EVM smart contracts, sending transactions and getting chain data.
- Anvil: Local Ethereum node, akin to Ganache, Hardhat Network.
- Chisel: Fast, utilitarian, and verbose solidity REPL.
$ forge build$ forge test$ forge fmt$ forge snapshot$ anvil$ forge script script/Counter.s.sol:CounterScript --rpc-url <your_rpc_url> --private-key <your_private_key>$ cast <subcommand>$ forge --help
$ anvil --help
$ cast --help