> ## Documentation Index
> Fetch the complete documentation index at: https://docs.therootnetwork.com/llms.txt
> Use this file to discover all available pages before exploring further.

# On-Chain Collectibles Protocol

Using The Root Network’s NFT runtime module, you can mint and trade NFTs on The Root Network without ever needing to touch a smart contract. Instead, users can create custom NFTs using only a Javascript API or point-and-click with a user interface (UI). This not only simplifies the process of minting NFT assets for everyone but also ensures that creators are not restricted to a particular marketplace. The following features are designed to simplify the storage, sharing, and usage of NFTs:

## Create a token collection

The first step to creating your NFTs on The Root Network is creating a specific collection to store groups of tokens. This makes it straightforward to organise your tokens by a common theme, such as an artistic feature, a timestamp or even a buyer. A collection can also contain just a single NFT if you would prefer individual groupings.

To create an NFT collection, you must define a schema (arrangement) of attributes all tokens in the collection could contain. These could be characteristics such as:

* General appearance (i.e. data represented within the NFT)
* A specific timestamp
* A specific creator
* A naming system
* A royalties scheme for secondary sales. This allows one or more creators to receive a set % of a sale price on all sales of your NFT

Finally, you must give your collection a name. The more discoverable, the better!

## Create your individual tokens

Once your collection has been created, you can start actually minting your NFTs. At this point, you can assign the token owner and individually determine a fixed price or royalty scheme.

## Next Steps

To mint and trade NFTs on The Root Network, there are a couple of pallets you might want to check out:

### `nft` pallet (ERC-721 Standard)

* Pallet [Native API References](../../build/substrate/api-reference/runtime-pallets/nft) and [code examples](https://github.com/futureversecom/trn-examples/tree/main/examples/substrate/use-nft).
* Pallet [EVM API References](../../build/evm/runtime-precompiles/nft-erc-721) and [code examples](https://github.com/futureversecom/trn-examples/tree/main/examples/evm/use-erc721).

### `marketplace` pallet

* Pallet [Native API References](../../build/substrate/api-reference/runtime-pallets/marketplace) and [code examples](https://github.com/futureversecom/trn-examples/tree/main/examples/substrate/use-marketplace).

<Note>
  What's the difference between [Native API and EVM API](../../build/getting-started/)?
</Note>
