PulseChain é uma aplicação descentralizada (DApp) desenvolvida com o objetivo de permitir que usuários da rede Ethereum publiquem e interajam com mensagens curtas chamadas Pulses. Todas as interações são registradas on-chain, promovendo transparência e imutabilidade.
Este projeto utiliza o contrato inteligente 0xF1E9cFF187D12d8a33862e0108dd216Cdb37aa0b
, implementado na testnet Sepolia, como backend da aplicação.
- Criar postagens (Pulses)
- Curtir e descurtir Pulses
- Interagir com o contrato em tempo real via WebSocket (sem polling)
- Interface moderna e responsiva utilizando Material UI
- React — Interface do usuário
- Material UI (MUI) — Componentes visuais
- Wagmi — Integração com contratos e gerenciamento de estado Web3
- Reown AppKit — Autenticação via carteira
- RPC Gateway to Ethereum Sepolia — WebSocket para escuta de eventos on-chain
- A ABI do contrato é gerada automaticamente via
wagmi
para o arquivogenerated.ts
, facilitando a integração. - A escuta de eventos on-chain é feita via WebSocket (
ethereum-sepolia-rpc.publicnode.com
), eliminando a necessidade de polling constante. - Todas as interações respeitam as boas práticas da Web3, incluindo confirmação de transações pelo usuário e uso de testnet.
Nenhuma instalação local é necessária. A aplicação é acessada diretamente no navegador com suporte à carteira MetaMask.
Claro! Aqui está uma sugestão atualizada para o seu README, cobrindo as duas formas de autenticação: com carteira MetaMask e com e-mail.
Você pode se autenticar de duas formas: 1. Via carteira MetaMask (extensão) 2. Via e-mail + código de confirmação
- Instale a extensão MetaMask no seu navegador.
- Crie uma nova carteira ou conecte uma já existente.
- Após conectar a carteira, você poderá autenticar-se diretamente com ela no app.
- Na janela aberta depois de clicar em Connect Wallet, clique em "Haven't got a wallet? Get started".
- Informe seu e-mail.
- Digite o código de confirmação que será enviado para sua caixa de entrada, spam ou lixo eletrônico.
- Pronto! Agora seu login será feito com e-mail + código de confirmação.
- Acesse o Ethereum Sepolia Faucet do Google
- Faça login com sua conta Google, informe o seu endereço da carteira e clique em "Receive 0.05 Sepolia ETH"
-
Clique em "Connect Wallet"
-
Escolha a MetaMask e aprove a conexão
-
Agora você pode:
- Criar novos Pulses
- Curtir ou descurtir outros Pulses
- Desativar um Pulse (não remove da blockchain, apenas oculta da interface)
💡 Cada transação exige confirmação via MetaMask e utiliza o saldo de Sepolia ETH da sua carteira.
Este projeto também serve como exemplo prático de:
- Como integrar contratos inteligentes com frontend React
- Utilização do
wagmi
para interações avançadas - Escuta de eventos em tempo real com WebSocket
- Autenticação de usuários Web3 com o Reown AppKit
- Endereço:
0xF1E9cFF187D12d8a33862e0108dd216Cdb37aa0b
- Rede: Ethereum Testnet Sepolia
- Código-fonte: Verificado e disponível no Etherscan
Pull requests e sugestões são muito bem-vindos. A ideia é que este projeto sirva como base para outras iniciativas da comunidade Web3.
Este projeto é distribuído sob a licença MIT. Veja o arquivo LICENSE
para mais informações.