Este desafio se trata de fazer uma aplicação React(utilizando TypeScript), de uma tela onde você poderá fazer transações ETH, integrando com uma carteira MetaMask.
Primeiramente, você deverá possuir a MetaMask logada em uma conta para poder acessar a aplicação, caso contrário, aparecerá uma tela estática com uma mensagem solicitando que você conecte a uma conta MetaMask (a própria aplicação abre a extensão para logar em sua conta MetaMask).
Após logado, você terá acesso a página de envio de ETH, nesta página, terá seu código da carteira e quantidade de ETH que a carteira possui, logo abaixo você poderá selecionar a carteira da pessoa que você deseja enviar ETH e a quantidade.
Após selecionar dados válidos, você será direcionado para uma página de aguardo (enquanto a transação ocorre), e então você é direcionado para uma página que mostra que sua transação foi feita com sucesso, e um botão para ver a transação que foi feita, com o remetente, o destinatário, o código da transação e a quantidade de ETH enviada.
A aplicação possui um tratamento de erros, se você, por exemplo, colocar uma carteira inválida, você será direcionado para uma página de erro com o nome do erro que ocorreu.
- React:heavy_check_mark:
- Typescript:heavy_check_mark:
- Material UI:heavy_check_mark:
- Ethers JS:heavy_check_mark:
- MetaMask:heavy_check_mark:
- Web3 (Rede Ethereum) :heavy_check_mark:
A aplicação foi feita com React e Typescript, o design das páginas foram feitos a partir do MUI(Material UI), utilizando ao máximo sua documentação. E a integração com a rede Ethereum foi feita a partir da biblioteca "Ethers JS", junto com a extensão MetaMask, utilizando sua carteira.
Antes de começar, você vai precisar ter instalado em sua máquina algum gerenciador de pacotes, seja o Npm ou o Yarn.
Além disto é bom ter um editor para trabalhar com o código como VSCode
# Clone este repositório
$ git clone https://github.com/valentimcanejo/desafio-dexkit.git
# Acesse a pasta do projeto no terminal/cmd
$ cd desafio-dexkit
# Use um destes comandos para instalar as dependências
$ npm install
ou
$ yarn install
# Use um destes comandos para iniciar a aplicação
$ npm start
ou
$ yarn start
# O servidor inciará na porta:3000