// the find
PatrickAlphaC/nft-mix
A Brownie-based starter kit for deploying ERC-721 NFTs on Ethereum, featuring a simple fixed-URI contract and an advanced version that uses Chainlink VRF for randomized token traits. Built as a teaching tool by PatrickAlphaC; the target audience is developers learning NFT mechanics and Chainlink integration, not anyone building production NFTs.
The two-tier structure (simple vs. advanced) is genuinely useful for learning — you can see the complexity that VRF adds without it being mixed into a single bloated contract. Chainlink VRF integration is implemented correctly with the fulfillRandomness callback pattern, which is the right way to do on-chain randomness. The test suite covers both unit tests with mock VRF coordinator and integration tests against a real testnet, which is more than most tutorial repos bother with. IPFS metadata handling is practical — pre-baked metadata lets you skip running a local node, and Pinata upload is included as an alternative.
Brownie is effectively unmaintained and its Python 3.11+ compatibility is broken for many users; starting a new project on it in 2024 means inheriting that debt immediately. The contracts use Chainlink VRF v1, which is deprecated — Sepolia support for v1 is limited and the recommended path is VRF v2 or v2.5. The metadata is hardcoded JSON files committed to the repo rather than generated dynamically, so any real variation in traits requires manually editing JSON blobs. No on-chain royalty standard (EIP-2981) is implemented, which means OpenSea royalties depend on their off-chain enforcement, which they've been dismantling.