Skip to content

fernandosilvap96/coin-build

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 

Repository files navigation

Criação de Criptomoeda

coin-build

Objetivo

Vamos criar uma criptomoeda do zero, tudo feito no browser através do REMIX IDE, Metamask e por fim vamos lançar nossa criptomoeda na exchange Uniswap.

O tutorial será dividido em 4 partes

Compilar o Smart Contract

Configurar o Metamask

Deploy do Smart Contract

Listar a criptomoeda em uma exchange

Compilar Smart Contract

  • Acesse o REMIX IDE através desse link.
  • Crie um Smart Contract com o nome de Token.sol dentro da pasta contracts:

image

  • Cole o código abaixo no Smart Contract que acabamos de criar:
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.6;

contract Token {

    string public name;
    string public symbol;
    uint256 public decimals;
    uint256 public totalSupply;

    mapping(address => uint256) public balanceOf;
    mapping(address => mapping(address => uint256)) public allowance;

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);

    constructor(string memory _name, string memory _symbol, uint _decimals, uint _totalSupply) {
        name = _name;
        symbol = _symbol;
        decimals = _decimals;
        totalSupply = _totalSupply; 
        balanceOf[msg.sender] = totalSupply;
    }

    function transfer(address _to, uint256 _value) external returns (bool success) {
        require(balanceOf[msg.sender] >= _value);
        _transfer(msg.sender, _to, _value);
        return true;
    }

    function _transfer(address _from, address _to, uint256 _value) internal {
        require(_to != address(0));
        balanceOf[_from] = balanceOf[_from] - (_value);
        balanceOf[_to] = balanceOf[_to] + (_value);
        emit Transfer(_from, _to, _value);
    }

    function approve(address _spender, uint256 _value) external returns (bool) {
        require(_spender != address(0));
        allowance[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
        return true;
    }

    function transferFrom(address _from, address _to, uint256 _value) external returns (bool) {
        require(_value <= balanceOf[_from]);
        require(_value <= allowance[_from][msg.sender]);
        allowance[_from][msg.sender] = allowance[_from][msg.sender] - (_value);
        _transfer(_from, _to, _value);
        return true;
    }

}
  • Clique em "Compile Token.sol":

image

Configurar o Metamask

  • Precisamos entrar na nossa wallet do Metamask, instale a extensão do Metamask através desse link.

  • Caso não tenha nenhuma wallet, crie uma nova.

  • Agora vamos colocar eth da testnet na nossa wallet, para isso siga os passos abaixo:

1º Passo: Conecte sua wallet na testnet Kovan:

image

2º Passo: Copie o seu endereço:

image

3º Passo: Acesse o site Kovan Faucet, coloque seu endereço e clique em "Send request":

image

Deploy do Smart Contract

  • Voltando ao IDE REMIX, selecione a opção Deploy and run Transactions:

  • Mude o campo "Environment" para injected Web3, caso dê erro tente atualizar a página, compilar novamente e então você deve chegar a essa configuração:

image

  • Coloque os dados para Deploy, ex = Name: FernandoCoin / Symbol: FC:

image

  • Clique em "transact", e então confirme a transação no Metamask.

  • Para consultar o endereço do contrato e todas as transações que fizemos, entre no site TESTNET Kovan e coloque o endereço da sua wallet:

image

  • Copie o endereço do contrato que geramos na hora do Deploy, basta clicar em "Contract Creation":

image

image

Listar a criptomoeda em uma exchange (DEX)

  • Com o endereço do nosso contrato copiado, vamos acessar o site da Uniswap e então conectar nossa Metamask wallet:

image

  • Selecione a opção Metamask e conclua a conexão:

image

  • Clique no campo "Selecione um token" e cole o endereço do nosso contrato:

image

image

  • Clique em importar, após finalizar a importação nós concluimos esse tutorial.
Obrigado pela sua atenção, sinta-se a vontade para entrar em contato caso esteja com alguma dúvida ou para dar feedback.

Linkedin: Fernando Pinto

Email: fernando-p_@outlook.com

About

Criação de uma criptomoeda

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published