<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: ComposableNFT</title>
    <description>The latest articles on DEV Community by ComposableNFT (@composablenft).</description>
    <link>https://dev.to/composablenft</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F6546%2F05af7353-f6f2-4513-9658-1e644a966c88.png</url>
      <title>DEV Community: ComposableNFT</title>
      <link>https://dev.to/composablenft</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/composablenft"/>
    <language>en</language>
    <item>
      <title>Introducing ComposableNFT</title>
      <dc:creator>Medusa Devs</dc:creator>
      <pubDate>Fri, 20 Jan 2023 19:04:09 +0000</pubDate>
      <link>https://dev.to/composablenft/introducing-composablenft-45pi</link>
      <guid>https://dev.to/composablenft/introducing-composablenft-45pi</guid>
      <description>&lt;p&gt;We developed, used and tested in the last year an implementation of extensions of the already widely used ERC721 and ERC1155 standards for NFT composability.&lt;/p&gt;

&lt;p&gt;This architecture is written focusing on gas consumption efficiency.&lt;/p&gt;

&lt;p&gt;We decided to open-source it and we would like to introduce it to the community. &lt;/p&gt;

&lt;p&gt;These extensions permit the attachment and detachment of ERC1155 component (ERC1155C) tokens to and from ERC721 composable (ERC721C) tokens through the use of simple methods.&lt;/p&gt;

&lt;p&gt;Using this implementation there are some properties to keep in mind:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;attached component tokens cannot be transfered;&lt;/li&gt;
&lt;li&gt;when a composable token is transfered, all its components get transfered too;&lt;/li&gt;
&lt;li&gt;a composable token can be transfered only if its contract is approved to transfer its components.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Just think about ERC721C as a box and ERC1155C as its contained tokens, so many type of applications can leverage composable NFTs like games, social virtual realities, licensing systems, etc.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Games can use ERC721C tokens to represent characters and ERC1155C for any type of equipment.&lt;/li&gt;
&lt;li&gt;In social virtual realities ERC721C tokens can represent avatar characters and ERC1155C their accessories.&lt;/li&gt;
&lt;li&gt;In licensing systems ERC721C tokens can represent the basic subscriptions and ERC1155C its additional packages.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The maximum quantity of components that can be attached to an ERC721C token is settable in the constructor, this argument can be set to 0 to handle unlimited number of components, but this is not recommended.&lt;/p&gt;

&lt;p&gt;Three more extensions have been developed to handle more specific cases:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;ERC721CUniqueComponents:&lt;br&gt;
ensures that each attached component token is unique;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;ERC721CCompatibleContracts:&lt;br&gt;
ensures that only component tokens of specific contracts can be attached;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;ERC721CMutexComponents:&lt;br&gt;
ensures that mutually exclusive token cannot be attached.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;More info and examples can be found on &lt;a href="https://composablenft.org"&gt;composablenft.org&lt;/a&gt;&lt;/p&gt;

</description>
      <category>blockchain</category>
      <category>ethereum</category>
      <category>solidity</category>
      <category>nft</category>
    </item>
  </channel>
</rss>
