Skip to content

Latest commit

 

History

History
50 lines (40 loc) · 2.04 KB

README.md

File metadata and controls

50 lines (40 loc) · 2.04 KB

Composable NFTs

While the extensions defined by OpenSea can form a base layer framework to the ERC-721 metadata standard, they fail to define configuration standards that enable NFTs in different composable contexts.

The following extensions to the ERC 721 metadata standard ensure your project can integrate with other third-party composable projects like the PunkScape Builder.

Transparent Compatibility

The transparent_image field is required unless your image is already transparent and has a background_color defined. The background_color field is optional, but recommended.

{
  "image": "ipfs://...",
  "transparent_image": "ipfs://...",
  "background_color": "#000000"
}

Pixel Art Compatibility

The pixel_density field refers to the conceptual not literal pixel density, the perceived pixel width and height of the image. For example, even if the image of a CryptoPunk could be 600px * 600px, the pixel density, for the purposes of composability, is 24px * 24px. pixel_density.width and pixel_density.height are required fields for pixel art compatability as described below:

{
  "image": "ipfs://...",
  "pixel_density": {
    "width": 24,
    "height": 24
  }
}

If the pixel density is equal across all tokens, it can be defined at the contract level metadata, rather than the individual NFT level metadata, via token_pixel_density (as described here), as follows:

{
  "name": "NFT Project XYZ",
  "description": "A wonderful NFT collection configured for composability",
  "image": "https://nft-project.xyz/logo.png",
  "external_link": "https://nft-project.xyz",
  "seller_fee_basis_points": 100,
  "fee_recipient": "0x123",
  "token_pixel_density": {
    "width": 24,
    "height": 24,
  }
}

If you have suggestions to extend this standard, please feel free to create a pull request or submit a GitHub issue.