Quai Network Logo

Token Deployer

Easily deploy your ERC20 token on Quai Network.

Enter the name of your token.

Enter your token ticker.

Set the intitial supply of your token.

The ERC20 Contract

The Quai Token deployer is configured to deploy the base implementation of Open Zeppelin's ERC20 standard expanded with a Ownable modifier contract. Deploying the contract will create a new single-chain token with the specified name, symbol, and supply. You, as the owner, will be minted the entirety of the token supply, and will be able to mint new tokens and transfer ownership of the token contract.

While the contract below is useful for simple deployments, it lacks customizability. If your token requires more advanced features such as custom distribution, consider writing your own contract and deploying it via Hardhat.

erc20.sol

1
// SPDX-License-Identifier: MIT
2
pragma solidity ^0.8.20;
3
4
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
5
import "@openzeppelin/contracts/access/Ownable.sol";
6
7
contract TestERC20 is ERC20, Ownable {
8
/**
9
* @dev Constructor sets msg.sender as contract owner.
10
* @dev Constructor mints initial supply of tokens to contract owner.
11
*
12
* @param name Name of the token.
13
* @param symbol Symbol of the token.
14
* @param initialSupply Initial supply of the token.
15
*/
16
constructor(string memory name, string memory symbol, uint256 initialSupply) ERC20(name, symbol) Ownable(msg.sender) {
17
_mint(msg.sender, initialSupply);
18
}
19
20
/**
21
* @dev Mints tokens to the specified address.
22
* @dev Modifier onlyOwner restricts the minting function to the contract owner.
23
*
24
* @param to Address to which tokens are to be minted.
25
* @param amount Amount of tokens to be minted.
26
*/
27
function mint(address to, uint256 amount) public onlyOwner {
28
_mint(to, amount);
29
}
30
}