A ideia principal por trás deste projeto é a criação de um contrato ERC-721 (NFTs) no qual poderam ser gerados tokens não-fungíveis, que representarão cada um dos membros participantes da entidade e seus respectivos cargos no semestre. Após a criação dos tokens, cada membro deverá receber seu respectivo NFT e, com a posse dele, poderá fazer o que desejar.
Alguns use-cases que pensei para este projeto, são:
- Registro dos membros participantes e de seus respectivos cargos
- Divulgação dos membros atuais e passados no site da Blockchain Insper (que aliás precisamos reformulá-lo nas férias!!)
- Utilizar como marketing para entidade (Quem entrar na BI, vai receber um NFT...)
- Instalar Node.js, NPM, Truffle e Ganache
- Abrir o Ganache Desktop ou ganache-cli
- Clonar o Repositório
- Na pasta criada executar os seguintes comandos
- npm install
- truffle migrate (para dar deploy) ou truffle test (para rodar os testes)
- Rede onde serão publicados os NFTs: Polygon
- Será utilizada a plataforma do OpenSea para visualizar o contrato e os NFTs
- As imagens deverão ser publicadas no IPFS (Pinata ou Infura)
- O contrato deve seguir os padrões estabelecidos pelo OpenZeppelin
- Compilador e ferramenta de desenvolvimento: Truffle e Ganache
Teremos 7 semanas para começar e terminar o projeto antes do final do semestre. Dividi as tarefas pensando em finalizar o projeto em 6 semanas, para termos uma folga caso algo dê errado.
- Curso de programação em Solidity (CryptoZombies)
- Pesquisa sobre criação de NFTs e como funcionam marketplaces (como o OpenSea)
- Como funciona a arquitetura de um contrato ERC-721
- Início do desenvolvimento do contrato (brincar e testar com o Remix)
Links Úteis:
- CryptoZombies
- 🎟 NFT on 💜 Polygon + 🐳 Opensea
- How to Build a Full Stack NFT Marketplace on Ethereum with Polygon and Next.js
- Dicionário Solidity
- Padrão ERC-721 OpenZeppelin
- Padrão IERC-721 OpenZeppelin
- How to use Remix IDE
- Download do Truffle, Ganache e Metamask
- Reimplementar o contrato com Truffle e Ganache
- Escrever testes para o contrato (apenas o dono do contrato pode criar NFTs!!)
Links Úteis:
- Aprender sobre como funciona o IPFS e baixar o IPFS Desktop
- Fazer um mint de NFT no Ganache com uma URL de imagem que esteja hosteada no IPFS (pode ser no Pinata, Infura ou IPFS Desktop)
- Fazer o deploy do contrato para uma rede teste (pode ser Rinkeby, Kovan ou a própria Mubai da Polygon)
Links Úteis:
- Aprender como funciona o padrão de metadados utilizado pelo OpenSea
- Fazer o deploy em uma rede teste e utilizá-lo dentro do OpenSea
- Começar o desenvolvimento da moldura dos NFTs (que servirá como base para todos eles)
Links Úteis:
- Pesquisar como criar uma Pixel Art (pode ser em Python ou alguma API)
- Criação das Pixel Arts para todos os membros da entidade 2021.2
Links Úteis:
- Deploy para a mainet da Polygon
- Distribuição dos NFTs para os membros da entidade
- Fazer posts no Insta, Linkedin, etc falando sobre o projeto
- Encerramento do semestre
- Verificar disponibilidade da galera para refazer o site da BI nas férias