Aprenda a criar um NFT na Tezos com IPFS na Filebase.
O que é Tezos?
A Tezos é uma blockchain descentralizada de código aberto que serve como uma plataforma para executar transações ponto a ponto e a implementação de contratos inteligentes.
Este tutorial usa um contrato NFT FA2 pré-compilado que utiliza uma interface de linha de comando para criar e interagir com os contratos NFT. O FA2 é um padrão de token (TZIP-12) na rede Tezos. Ele fornece um padrão API para transferências de token, consultas de saldo e gerenciamento de metadados de token.
Pré-requisitos:
- Download e instalação do Node.js.and npm.
- Download e instalação do Docker.
- Download do repositório do Github para este projeto.
1. Primeiro, precisamos de uma imagem para usar como um NFT. Começaremos carregando uma imagem para o Filebase para que possamos utilizá-la.
Para isso, navegue pelo console.filebase.com. Se você ainda não tem uma conta, se inscreva e então, faça o log in.
2. Selecione ‘Buckets’ no menu da barra lateral esquerda, ou navegue em console.filebase.com/buckets.
Selecione ‘Create Bucket’ no canto superior direito para criar um novo bucket para seus NFTs.
3. Entre com um nome para o bucket e escolha a rede de armazenamento do IPFS para criar o bucket
Neste guia estamos chamando o bucket de nft-collection
.
Os nomes dos buckets devem ser únicos para todos os usuários da Filebase, ter entre 3 e 63 caracteres e podem conter apenas caracteres minúsculos, números e traços.
4. Em seguida, selecione o bucket de sua lista de buckets, depois selecione 'Upload' no canto superior direito para carregar um arquivo de imagem.
5. Selecione uma imagem para ser carregada.
Uma vez carregada,ela ficará listada no bucket.
6. Você pode visualizar o CID (identificador de conteúdo) IPFS do objeto na coluna CID, ou pode clicar no objeto carregado para exibir os metadados dele, o que inclui o CID IPFS.
Escolha o método que você prefere e tome nota do CID do IPFS.
7. Abra uma interface de linha de comando e crie um novo diretório para seu projeto:
mkdir nft-tutorial
cd nft-tutorial
8. Instale o pacote @oxheadalpha/tznft
npm:
npm install -g https://github.com/@oxheadalpha/nft-tutorial.git
9. Inicialize a ferramenta tznft:
tznft init
10. Confirme que a inicialização foi bem sucedida ao visualizar a rede ativa padrão
O valor retornado deve ser ‘sandbox’:
tznft show-network
11. Em seguida, inicialize a rede Tezos com o comando:
tznft bootstrap
Se essa for a primeira vez que você está inicializando a rede sandbox, o docker fará automaticamente o download da imagem do docker Flextesa a ser utilizada no projeto.
12. Agora é o momento de cunhar um token NFT. A sintaxe de comando para a cunhagem é a seguinte:
tznft mint <owner_alias> --tokens <token_meta_list>
A Tznft vem com 2 contas padrão para uso - 'bob' e 'alice'. Por exemplo, para cunhar um NFT chamado 'Filebase Robot' que é de propriedade da conta padrão 'bob', você usaria este comando:
tznft mint bob --tokens '0, T1, Filebase Robot'
Este comando retornará a identificação do token do contrato NFT. Tome nota disso para o próximo passo.
13. Para inspecionar o contrato NFT e os metadados do token associados, podemos usar a seguinte sintaxe de comando:
tznft show-meta --nft <nft_address> --signer <alias> --tokens <token_id_list>
Por exemplo, para consultar o contrato NFT para o contrato criado na última etapa, o comando seria:
tznft show-meta --nft E6S9t44fKR9Uo5KT1XP3RrAfqHvHXu9Cy7fh --signer bob --tokens 0 1
14. Para examinar o saldo do token de nosso contrato NFT, podemos usar a seguinte sintaxe:
tznft show-balance --nft <nft_address> --signer <alias> --owner <alias> --tokens <token_id_list>
Por exemplo, para ver o saldo do NFT que acabamos de criar para a conta bob, podemos usar o comando:
tznft show-balance --nft E6S9t44fKR9Uo5KT1XP3RrAfqHvHXu9Cy7fh --signer bob --owner bob --tokens 0
O output deve parecer assim:
querying NFT contract E6S9t44fKR9Uo5KT1XP3RrAfqHvHXu9Cy7fh using balance inspector H1ytG7saMZ34sfdKT1Pezr7JjgmrPcPhpkbk
requested NFT balances:
owner: tSZAXWvGsGwVJqUtz1YPSCGWXwBdTncK2aCc token: 0 balance: 1
15. Agora vamos criar um NFT com metadados externos usando o CID IPFS que gravamos no início deste tutorial a partir de nosso upload da Filebase.
Para usar o CID do IPFS, adicionaremos um quarto parâmetro ao nosso comando de cunhagem de token:
tznft mint bob -t '0, Filebase, Filebase Robot, A44RPciW5pM4iyqRGQmRyTc9KbD7ZSkmEf4e7fk6rhbyvj'
Então, podemos inspecionar os metadados do novo token para ver o CID IPFS listado:
tznft show-meta -s bob --nft 3w1x23oiC31B8KT1SgzbcfTtdHRV8qHNG3hd --tokens 0
Que retornará o seguinte resultado:
token_id: 0 symbol: Filebase name: Filebase Robot extras: { ipfs_cid=A44RPciW5pM4iyqRGQmRyTc9KbD7ZSkmEf4e7fk6rhbyvj }
Você pode visualizar o arquivo IPFS usando o Gateway IPFS do Filebase com o CID IPFS. Por exemplo, para visualizar esta imagem, você pode ir para:
https://ipfs.filebase.io/ipfs/A44RPciW5pM4iyqRGQmRyTc9KbD7ZSkmEf4e7fk6rhbyvj
16. Até agora, temos usado a rede sandbox para estes comandos.
Você pode conectar com redes Tezos diferentes usando o comando :
Tznft set-network [network-name]
A partir daqui, você pode criar e cunhar NFTs diretamente da linha de comando em qualquer uma das redes Tezos.
Se você tem alguma pergunta, por favor junte-se ao nosso Discord , ou nos envie um e-mail para [email protected]
Este artigo foi traduzido por Fátima Lima e seu original pode ser encontrado aqui.
Latest comments (0)