This page may contain legacy content

To get our most up-to-date content please access our documentation

March 23, 2022

How to Create an Ethereum NFT – Full Guide

Table of Contents

As non-fungible tokens’ use cases keep growing both in the metaverse and in the real world, people from all walks of life want to dabble in this space. Also, as media prefer to spotlight the significant sums NFTs sell for, many desire to purchase an NFT and then sell it for a profit. However, the real and most impactful earnings come to those who know how to create an NFT. Moreover, since Ethereum is still the leader, it makes sense to learn how to create an Ethereum NFT. So, whether you are an experienced developer or just getting started in NFT programming, this article will demonstrate how you can get into Web3 in 2022 the right way by learning how to create an Ethereum NFT!

Herein, you will discover everything you need to know to join the NFT era. With the knowledge and skills obtained in this article, you’ll be able to create your own NFT or offer this service to your clients. We will first cover some basics to get you all up to speed. Then, we will show you how to create NFTs using a centralized NFT marketplace. Finally, we will guide you through the process of creating your own decentralized NFT minting dapp (decentralized application). Using the latter, you’ll be able to create an Ethereum NFT with ease. However, the essential tool for creating this dapp is Moralis – the ultimate Web3 development platform. As such, create your free Moralis account now. By doing so, you’ll be able to follow our instructions and end up with your own NFT minting page.  

Ethereum NFTs – The Basics

If you are familiar with the basics and eager to create an Ethereum NFT, feel free to skip this section. Although, a quick refresher has never hurt anyone. So, let’s start examining what Ethereum NFTs are. As the combined words of “Ethereum” and “NFTs” suggest, Ethereum NFTs are non-fungible tokens on the Ethereum chain. The latter is the most popular programmable blockchain, and it was the first of its kind, launched in 2015. Now, there are many other reputable programmable chains, and many of them are EVM-compatible. However, despite the sometimes exorbitant gas fees, Ethereum remains the most popular network for NFTs. 

Furthermore, by following this guide and learning how to create an Ethereum NFT, you can easily apply this knowledge to mint NFTs on other chains as well. That’s possible thanks to the fact that Moralis has cross-chain interoperability integrated into its foundation. As a result, you can use its backend infrastructure to reach all supported blockchains with the same code.  

Now that you have at least a basic idea of what Ethereum is, let’s also make sure you know what NFTs are. As the term suggests, non-fungible tokens – unlike fungible tokens – have unique properties. This means that every NFT is unlike any other NFT. Further, even if two or more NFTs represent the same digital file, they have unique on-chain data. Thus, NFTs are excellent for digital art, digital collectibles, and ownership representation of digital and real-life assets. 

Create vs Mint NFTs

Since we will show you how to create an Ethereum NFT below, we also want to be clear on the “create” part. As you probably know, NFTs consist of digital files (e.g., PNG, JPG, MP3, PDF, MP4, etc.) and the metadata. However, there can be a lot of confusion when talking about creating NFTs. Creating images, songs, videos, or other digital documents, is considered “creating” the artistic part of NFTs. Yet, from a blockchain-development point of view, NFT creation is all about “minting”. Minting refers to executing on-chain transactions that take digital files and metadata and turn them into NFTs.

So, as a blockchain developer, you’ll want to focus on the minting part of NFT creation. Fortunately, you can easily outsource the artistic part on an array of outsourcing platforms. On the other hand, you can also connect with artists that already have a following and offer them a collaboration. Hence, they provide the digital files, and you create, or should we say, mint them into NFTs. 

Create an Ethereum NFT Using the Right Standard

Let’s wrap up this quick “Ethereum NFT basics” talk by touching base with token standards. As you may know, blockchain is all about transparency and immutability. As such, proper rules and guidelines must be set in place. Moreover, they often come in the form of standards. For fungible Ethereum tokens, we have the ERC-20 standard. On the other hand, we have ERC-721 and ERC-1155 standards for Ethereum NFTs. We recommend using the links in the previous sentence to learn more about each of these two token standards. Furthermore, you want to focus on ERC-721 smart contracts when creating single NFTs, such as digital art representations. Feel free to use our tutorial on how to create an ERC-721 NFT. However, when collectibles that require you to generate thousands of NFTs (batch minting) are in question, ERC-1155 should be your focus.

Creating an Ethereum NFT the Centralized vs Decentralized Way

In this section, we will show you how to create an Ethereum NFT in a centralized fashion and in a decentralized way. We will start with the former. As you probably already know, these days, there are already many NFT marketplaces at your disposal. Of course, not all are equally popular nor equally centralized. As such, we leave it up to you to explore available options and decide which one you like the most. However, for the sake of this article, we will focus on the most popular NFT marketplace, OpenSea.

How to Create an Ethereum NFT with OpenSea

If you do not care about the level of centralization or decentralization and want to create an Ethereum NFT fast, then using OpenSea might be the best option for you. As such, make sure you have your MetaMask browser extension ready. Then, go to OpenSea’s official website. Once there, you will immediately see the “Create” button:

After clicking the above button,  you’ll be asked to connect your Web3 wallet. While you have several different options, we recommend using MetaMask as instructed earlier:

Once you click on “MetaMask”, your MetaMask extension will prompt you to sign the signature request:

After clicking on the “Sign” button as illustrated above, you will land on a page where you get to create an Ethereum NFT. Note that there are some optional and some required fields. Furthermore, you need to upload a digital file that you want to convert to an NFT. You also need to give your NFT a name:

You can include an external link and a description. Plus, you can select if you want to add your NFT to a particular collection. Also, you have an option to add textual and numerical traits to your NFT. You do that by adding properties, levels, and stats. But, before you click on the “Create” button at the bottom of that page, make sure you’ve entered everything correctly. Moreover, we recommend you check the current Ethereum gas fees. That way, you’ll be able to avoid paying a fortune minting your NFT by postponing your execution.

Nonetheless, also note that OpenSea is starting to implement minting and trades of NFTs without gas fees. Of course, that is also something you can incorporate in your own minting dapps. 

How to Create an Ethereum NFT with Moralis

Before we hand you over to one of Moralis’ experts in the video tutorial below, we want to show you our finished example dapp. It follows relatively similar steps as with OpenSea’s application; however, it is using Moralis’ IPFS integration. As such, this decentralized storage solution ensures we stay true to the core vision of blockchain technology. When users first land on our example dapp, they need to authenticate with MetaMask wallets:

Once users enter their usernames and email addresses, they can connect with MetaMask. Then, they are ready to create an Ethereum NFT. As such, they can enter their NFT’s name and description. Also, they need to choose a file using the “Choose File” button. Finally, they get to upload their files and mint their NFTs by clicking on the “Upload and Mint” button:

Of course, users must confirm the minting transaction by clicking on the “Confirm” button inside their MetaMask:

After the above transaction is confirmed, the dapp displays a message with the transaction hash:

Now you know what our example NFT minting dapp looks like. This means it’s time to have a closer look at how you can create it yourself. 

Create an Ethereum NFT Minting Dapp – Code Walkthrough

As mentioned earlier, it is time for us to hand you over to the capable hands of a Moralis expert (video below starting at 3:41). He’ll show you how to create the above-presented minter dapp. You’ll start by creating a Python flask app, which will trigger the associated code. Moreover, the core parts of the code are in the “index.html” and “logic.js” files, both available on GitHub

The appearance and structure of our dapp are covered in the “index.html” and “base_template.html” files (the latter shows that we use Bootstrap). As such, it serves as a basic Web3 UI. However, as far as the functionality of our dapp goes, “logic.js” gets things done. Moreover, this is also where we insert our Moralis server’s details to activate Moralis’ SDK and access its ultimate NFT API. With that covered, we get to simply copy short snippets of code from Moralis’ documentation. As such, we include all of the backend functionality with ease. This is also how we are able to cover the logic of our dapp with only 71 lines of code. 

Nonetheless, you need to keep in mind that minting is done via interaction with smart contracts. However, the video below (10:17) will show you a shortcut to avoid dealing with smart contracts for now. Although using OpenZeppelin and Remix, you can have your own smart contract ready without a deep understanding of Solidity

Finally, here’s the video tutorial we’ve been referencing above:

Initial Moralis Setup

As mentioned above, you need your Moralis server’s details to create an Ethereum NFT minting dapp with Moralis. As such, you need to complete the initial Moralis setup. This means you need to create your free Moralis account or log in to your existing one. Then, you can create a Moralis server, copy its details, and paste them into your “logic.js” file.

How to Create an Ethereum NFT – Summary

At this point, you know how to create an Ethereum NFT. Also, you know how to accomplish this either in a centralized or decentralized manner. Furthermore, you know that using reputable NFT marketplaces is the fastest way but has its drawbacks. On the other hand, creating your own minting dapp is, without a doubt, way more empowering. It is a valuable skill to have under your belt as NFTs are priming to go mainstream. As such, we encourage you to use all available resources to upgrade your NFT token development skills. 

Great places to start are the Moralis YouTube channel and the Moralis blog. On these two outlets, you can find numerous NFT tutorials. Moreover, they will show you how to mint in-game NFT characters, how to launch a white-label NFT marketplace, how to develop an NFT rarity ranking dapp, how to lazy mint NFTs, and much more. Of course, both of these venues cover other blockchain development areas as well. Some of the latest topics include top tips for gas optimization in Solidity, how to build a 2D Web3 game, how to create a GameFi game, Web3 Firebase authentication, and how to create a Web3 music platform. As such, these two outlets are perfect for continued free blockchain education. 

However, if you are determined to get into Web3 in a more professional way, consider enrolling in Moralis Academy. Once enrolled, you will get access to top-quality blockchain development courses, an amazing community, and expert mentorship. As a result, you’ll have everything you need to become a Web3 developer in no time. 

Moralis Money
Stay ahead of the markets with real-time, on-chain data insights. Inform your trades with true market alpha!
Moralis Money
Related Articles
November 1, 2022

Cross-Chain Bridging Deep-Dive

October 19, 2023

How to Set Up Notifications for NFT Sales

December 30, 2022

Essential Web3 Programming Languages for 2023

September 23, 2022

How to Create a Decentralized App in Just 3 Steps

November 6, 2023

Base Faucet – How to Get Free BASE Crypto Testnet Funds 

November 13, 2023

Top Block Explorer API – How to Get All the Blockchain Data You Need

November 2, 2023

Create Chiliz Chain Dapps with Moralis’ Chiliz API 

January 14, 2023

ENS Resolver – How to Resolve any ENS Domain