Tokenization on Fantom Opera

What is Tokenization

Tokenization is a process of creating digital representations of various assets on a blockchain. These assets can be physical, such as real estate or art, financial, such as stocks or bonds, or intangible, such as intellectual property or data. The assets are represented in the form of digital tokens that can be traded, verified, and secured on a decentralized network. Tokens can be fungible or non-fungible, depending on their design and function. Tokenization is part of Web3, which aims to make online space more open, transparent, and democratic.

Fantom Opera as tokenization platform

What is Fantom Opera

Fantom Opera is a smart contract-enabled blockchain that aims to provide a faster and more efficient solution for developers building decentralized applications (dApps) on the blockchain. It is built based on the Cosmos SDK or the Ethermint network and is designed to be one of the few blockchains interacting with Ethereum and the Cosmos ecosystem.

Benefits of Fantom Opera

  • Fast transaction finality: Fantom Opera’s consensus mechanism, Lachesis aBFT, allows for fast transaction finality, with a transaction being considered finalized and settled in 1 second.
  • Low transaction fees: Fantom Opera boasts low transaction fees, mostly around 0.01 USD.
  • EVM compatibility: Fantom Opera is fully compatible with the Ethereum Virtual Machine (EVM), which means that developers can easily port their existing Ethereum dApps to Fantom Opera.
  • High scalability: Fantom Opera is designed to handle high transaction volumes, with a capacity of up to 300,000 transactions per second.
  • Open-source: All information about Fantom Opera is available on their GitHub, and their code is open-source, making it easy for developers to build dApps on the Opera mainnet.

Create a token on Fantom Opera

There are multiple ways to create and deploy a token on Fantom OperaThe easiest one is to use a software such as the Cryptix Tokenlaunchpad. The benefits of using such a software are:

  • Easy creation and deployment of tokens: You can configure and deploy tokens, even if you don’t know about Solidity, Vyper or any other programming language.
  • Browser Wallet Integration: Deployment will be done via a browser wallet (e.g. Metamask). This allows to deploy tokens with your preferred hardware wallet as e.g. Metamask support Ledger, Trezor, Lattice and others.
  • Predefined Token Features and Networks: The Token Launchpad supports multiple networks and different Token Standards such as ERC-20 or ERC-1400.
  • Speed: Creation and deployment can be done in less than a minute.
  • Secure Smart Contracts: The Tokens created via the Tokenlaunchpad are implemented in a secure way and according to industry standards.
 

Another way is to develop your own token using Solidity and a development environment such as hardhat. The benefits of this method are:

  • Flexibility: You have full control of the smart contract and therefore, you can implement every type of token and functionality you need.
  • Automation: Using a coded deployment also allows you to deploy multiple different tokens in a row or do any other automation you need.

Create a Token on Fantom Opera using Cryptix Tokenlaunchpad

In order to deploy a token via https://app.tokenlaunchpad.eu/ you need to have a browser wallet (e.g. Metamask: https://metamask.io/) installed in your browser with some funds on it.  The Tokenlaunchpad also supports testnets which you can use for testing and demo purposes. If you need funds for a testnet, just search for “Fantom Opera Faucet”. To deploy the token, follow these 4 simple steps:

  1. Choose Fantom Opera as the Blockchain network and click Connect.
  2. Pick the token type, opting for either a Generic ERC-20 token or an ERC-1400 security token.
  3. Provide the necessary details in the token parameters form.
  4. Initiate the deployment process and authenticate the transaction through Metamask by signing it. 

Create a Token on Fantom Opera using Hardhat

Prerequisites:

  • Node.js (version 12.x or higher): Install it from here.
  • A code editor like Visual Studio Code: Get it from here.
Creation Step-by-Step:
  1. Create a new directory e.g. ‘my-token’, navigate to the new directory and run npm init -y
  2. Install required packages using npm install --save-dev hardhat @nomicfoundation/hardhat-toolbox @openzeppelin/contracts
  3. Run npx hardhat init to set up a new hardhat project and select “Create an empty hardhat.config.js”.
  4. Modify the hardhat.config.js file to include the necessary plugins and configurations as below and fill in your private keys.
				
					require('@nomicfoundation/hardhat-ethers'); 
module.exports = {
  solidity: {
    version: '0.8.20',
  },
  networks: {
    mainnet: {
      url: 'https://rpc3.fantom.network',
      accounts: ['0xYOUR_PRIVATE_KEY'],
      gasPrice: 20000000000, // 20 Gwei   
    },
    testnet: {
      url: 'https://fantom.api.onfinality.io/public',
      accounts: ['0xYOUR_PRIVATE_KEY'],
      gasPrice: 20000000000, // 20 Gwei
    },
  },
};
				
			
  1. Create a new directory with the name contracts, and in it, a new Solidity file, e.g., MyToken.sol and paste the below code into it.
				
					// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;

import "@openzeppelin/contracts/token/ERC20/ERC20.sol";

contract MyToken is ERC20 {
    constructor(uint256 initialSupply) ERC20("MyToken", "MTK") {
        _mint(msg.sender, initialSupply * 10**18);
    }
}
				
			
  1. Run npx hardhat compile to compile the smart contract.
  2. Create a deployment script (e.g., deploy.js) in a new directory called scripts and paste the below code into it.
				
					async function main() {
  const [deployer] = await ethers.getSigners();
  console.log("Deploying contracts with the account:", deployer.address);

  const MyToken = await ethers.getContractFactory("MyToken");
  const token = await MyToken.deploy(1000000); // Deploy with an initial supply of 1,000,000 tokens

  console.log("Token deployed to:", token.address);
}

main()
  .then(() => process.exit(0))
  .catch((error) => {
    console.error(error);
    process.exit(1);
  });

				
			
  1. Execute the deployment script using npx hardhat run scripts/deploy.js --network testnet to deploy and create your token on the Fantom Opera test network.
  2. Check if everything is correct. If your token is ready to release, execute: npx hardhat run scripts/deploy.js --network mainnet

Contact us to explore unlimited power of tokenization

If you are interested in tokenizing assets and want to learn more about what benefits tokenization can bring for your business, do not hesitate to reach out to our tokenization expert team and book an appointment right now: