Understanding Projects And Collections


Toggle full transcript

Hello and welcome back. In this lesson, we're going to talk about users, projects and collections.


These are fundamental concepts that you need to understand if you're going to be Minting NFTs on ImmutableX.


To start with, let's consider Ethereum as the Layer 1 and ImmutableX as the Layer 2. The first concept that I want to talk about is users.


And at the end of the day, this starts with an Ethereum account. It has a private key, it has a public address. It's something that you are likely familiar with by using wallet applications


such as Metamask. There is a corresponding concept on ImmutableX called a user, and there's


a 1 to 1 relationship between an Ethereum account and an ImmutableX user. The way to create an ImmutableX user is by calling the ImmutableX API.


Now, if you want to issue any transaction using a wallet on ImmutableX, you must first register the underlying Ethereum account as


a user on ImmutableX. This will then mean that if you, say, deposit some tokens from


your Ethereum account into ImmutableX, then they will be available in your corresponding user. The next concept I want to talk about is collections, and this starts as


an ImmutableX compatible ERC-721 smart contract that has been deployed to Ethereum.


Similarly, you can call the ImmutableX API to register this contract and this turns into what's called a collection in ImmutableX.


A collection holds any of the tokens that are minted from this ERC-721 smart contract. And again, there is a 1 to 1 relationship between the two.


Now a collection can't be created in its own right by itself. It actually has to be created within the context of what's called a project.


And a project can have many collections. A project is essentially an administration unit within ImmutableX.


Now, there's no equivalent entity on Ethereum for a project. A project is simply created by calling the ImmutableX API.


To create a project thar you need to first register as a developer, and a developer has a 1 to 1 relationship with a project.


Now to register a developer, you simply need to use the Immutable Dev


Hub, which is a website that you can log into. A couple of things to note here. Firstly, as well as registering the contact email associated


with your developer account, you also need to register the address of an Ethereum account. Once you set this address, you are not able to change that project ownership.


So it's really important that you maintain proper security of the private key that's associated with that account.


Secondly, there are a few limits that are applied to projects and collections Projects are limited to create five collections within a four week


period. Now that we understand these fundamental concepts, we can actually go ahead and start registering these entities and getting to the point where we are able to


mint our first NFT on ImmutableX.