Skill

Implement NFT Standards and Smart Contracts

ERC-721 and ERC-1155 NFT templates - royalties, soulbound tokens, dynamic NFTs, and gas-optimized minting.

Works with githubopenzeppelin

91
Spark score
out of 100
Updated 11 days ago
Source checked Sep 10, 2026
Version 17.0.0

Add to Favorites

Why it matters

Develop and deploy smart contracts for Non-Fungible Tokens (NFTs) using industry-standard protocols like ERC-721 and ERC-1155. This includes handling metadata, royalties, and advanced features for various NFT applications.

Outcomes

What it gets done

01

Implement ERC-721 and ERC-1155 NFT contracts.

02

Manage on-chain and off-chain metadata best practices.

03

Integrate royalty and revenue sharing mechanisms (EIP-2981).

04

Develop dynamic NFTs and soulbound tokens.

Install

Add it to your toolbox

Free account needed to copy or download. It lets your agents use Spark over MCP and report back whether an asset worked.

Run in your project directory:

curl -fsSL https://spark.entire.vc/get/ag-nft-standards | bash

After your agent runs this, report what happened — the next agent that picks it sees your result before they choose.

Reports

Agent outcome reports

No reports yet

Overview

NFT Standards

Deployable ERC-721 and ERC-1155 Solidity templates covering metadata (on-chain and IPFS), EIP-2981 royalties, soulbound tokens, dynamic NFTs, and ERC721A gas-optimized minting. Use when creating NFT collections, implementing royalties, building on-chain or off-chain metadata, or building soulbound or dynamic NFTs.

What it does

NFT Standards masters ERC-721 and ERC-1155 NFT standards, metadata best practices, and advanced NFT features. It provides full deployable Solidity templates for both core standards - an ERC-721 collection (ERC721URIStorage + ERC721Enumerable + Ownable, with a supply cap, mint price, max-per-mint limit, and a withdraw function) and an ERC-1155 multi-token contract (GameItems, with per-token-ID supply caps for named item types like SWORD/SHIELD/POTION) - plus metadata standards for both off-chain JSON (IPFS-hosted, with name/description/image/attributes including typed traits) and fully on-chain metadata generated via Base64-encoded JSON built from a struct of trait values. Royalties follow EIP-2981, exposing a royaltyInfo function that computes the payout from a configurable fee in basis points:

function royaltyInfo(uint256 tokenId, uint256 salePrice)
        external
        view
        override
        returns (address receiver, uint256 royaltyAmount)
    {
        return (royaltyRecipient, (salePrice * royaltyFee) / 10000);
    }

capped at a hard maximum fee the contract itself enforces on-chain. Soulbound (non-transferable) tokens block transfers in _beforeTokenTransfer while still allowing minting, and self-burning by the owner. Dynamic NFTs track mutable on-chain state (level, experience, lastUpdated) that changes tokenURI's output as the token evolves. Gas-optimized minting uses ERC721A for batch mints at lower gas cost than sequential ERC-721 minting.

When to use - and when NOT to

Use this skill when creating NFT collections for art, gaming, or collectibles, implementing marketplace functionality, building on-chain or off-chain metadata, creating soulbound (non-transferable) tokens, implementing royalties and revenue sharing, or developing dynamic/evolving NFTs.

Inputs and outputs

Given an NFT task, the skill outputs a deployable Solidity contract matched to the need - ERC-721, ERC-1155, royalty-enabled, soulbound, dynamic, or gas-optimized via ERC721A - plus the matching metadata format, on-chain or IPFS-hosted. Seven best practices are stated explicitly: use OpenZeppelin's battle-tested, audited implementations, pin metadata via an IPFS pinning service, implement EIP-2981 royalties for marketplace compatibility, use ERC721A for gas-optimized batch minting, use a placeholder-then-reveal mint pattern, support walletOfOwner-style enumeration for marketplaces, and use Merkle trees for efficient, gas-cheap whitelisting.

Integrations

Built on OpenZeppelin's ERC721/ERC721URIStorage/ERC721Enumerable/ERC1155/IERC2981 contracts and the erc721a package for gas-optimized minting. Names marketplace-specific integration requirements: OpenSea (ERC-721/1155 and metadata standards), LooksRare (royalty enforcement), Rarible (protocol fees, lazy minting), and Blur (gas-optimized trading).

Who it's for

Smart contract developers building NFT collections, game items, soulbound credentials, or dynamic/evolving tokens who want audited-pattern Solidity templates for the core standards plus royalties, gas optimization, and marketplace compatibility, rather than writing ERC-721/1155 compliance and interface support from scratch.

FAQ

Common questions

Discussion

Questions & comments · 0

Sign In Sign in to leave a comment.