A pilha Web3: referência para desenvolvedores

Você quer se envolver com a construção de projetos Web3? Esta referência descreverá as camadas e ambientes de desenvolvimento mais populares.

Não é nenhum segredo que há muito burburinho em torno deste tópico – Web3 – agora. Inúmeras pessoas deixaram para trás seus empregos na FAANG e startups de destaque para buscar um novo começo no metaverso da Web3.

E, supondo que você esteja sentindo uma coceira semelhante – por onde você começa? Este artigo é inteiramente dedicado àqueles que desejam ir direto ao desenvolvimento Web3. Nosso foco será em uma variedade de categorias, cada uma contendo recursos valiosos para iniciar sua jornada.

Para tornar esta referência acessível, dividirei os recursos em seções separadas.

E essas seções são:

  • Camadas. Os Blockchains mais populares usados ​​no desenvolvimento.
  • Ambiente dev. Ferramentas para ajudá-lo a implantar nessas camadas.
  • Identidade. Como construir em torno de identidades de carteira e usar o login de criptografia.
  • Armazenar. Criação de armazenamento de dados permanente usando tecnologia P2P.
  • API. Acessando as redes principais diretamente para extrair informações.
  • A parte dianteira. Frameworks populares para coisas de front-end.

Uma pilha é um termo usado para definir uma combinação particular de tecnologias usadas para atingir um objetivo específico. Seja desenvolvimento full-stack ou, neste caso, a pilha Web3. Vale a pena notar que a tecnologia envolvida na construção de aplicativos e produtos Web3 é bastante “volátil”.

De certa forma, muitas coisas estão mudando à medida que mais pessoas se acostumam com a construção de software no blockchain. Assim, nosso objetivo para esta referência é mencionar recursos que já foram utilizados em projetos do mundo real.

Se tudo isso soa bem, podemos começar.

Camadas

A base de qualquer projeto Web3 começa com uma camada. A rede blockchain específica na qual seu aplicativo ou produto vai viver.

#1. Ethereum

Ethereum ganhou popularidade graças à sua proposta nativa de contrato inteligente.

Desde então, os desenvolvedores a tornaram a camada blockchain preferida para criar aplicativos Web3 de última geração. É também a camada preferida para muitos projetos NFT, portanto, se você quiser trabalhar em aplicativos relacionados a NFT, o Ethereum tem muito a oferecer imediatamente.

#2. Polígono

o Polígono camada é uma cadeia lateral Ethereum, oferecendo práticas de segurança mais complexas, mantendo taxas de transação (gás) mais baixas. É uma escolha popular para projetos em que o número de transações é extremamente alto, mas o preço das transações é baixo.

  11 prós e contras ao escolher um tema WordPress certo

Como o Polygon é uma cadeia lateral, também é frequentemente chamado de Blockchain da Camada 2. No entanto, o rápido desenvolvimento do Polygon o torna uma escolha popular não apenas para aplicativos NFT, mas também dApps e sistemas de pagamento.

Outras camadas Web3 notáveis:

  • Solana. Um blockchain criado com o objetivo de criar aplicativos DeFi em escala.
  • Protocolo PRÓXIMO. Blockchain de contrato inteligente com imensos recursos de desenvolvedor.
  • De bolinhas. Protocolo cross-blockchain para construir projetos de governança.
  • Tezos. Uma plataforma focada em energia para construir plataformas criativas descentralizadas.
  • Fantasma. Plataforma de contrato inteligente de código aberto para criar dApps.

Ambiente de desenvolvimento

Um ambiente de desenvolvimento permite que você pule toda a parte “começar do zero”. Estes são principalmente baseados em Ethereum por enquanto.

#1. Capacete de segurança

Capacete de segurança é um ambiente de desenvolvimento para desenvolvedores Ethereum. Ele funciona ajudando os desenvolvedores a automatizar o processo de criação e montagem de aplicativos descentralizados, mas também de contratos inteligentes. Sua popularidade decorre de uma Hardhat Network embutida, uma cópia individual da rede Ethereum que você pode usar para testar seus aplicativos localmente.

#2. Brigadeiro

Brigadeiro é uma estrutura baseada em JavaScript para construir contratos inteligentes. Ele pressupõe que você use o EVM (Ethereum Virtual Machine), fornecendo as ferramentas para acelerar o processo de desenvolvimento. Algumas dessas ferramentas incluem testes automatizados, um compilador de contratos e ferramentas separadas para acessar seus contatos diretamente do console.

Outros ambientes de desenvolvimento Web3 notáveis:

  • Fundição. Kit de ferramentas baseado em Rust para criar aplicativos no Ethereum.
  • Brownie. Estrutura baseada em Python para construir e testar contratos inteligentes.
  • Âncora. Um framework para trabalhar com Solana, escrito em Rust.
  • Embarcar. Estrutura tudo-em-um para construir em cima do Ethereum.
  • Waffle. Estrutura personalizada para testar contratos inteligentes.

Identidade

Ao contrário da autenticação tradicional de nome de usuário e senha, no Web3 os desenvolvedores implementam o uso de carteiras, mas também de chaves públicas.

#1. WalletConnect

WalletConnect é um protocolo de código aberto usado para se conectar a dApps por meio de uma carteira móvel. O conceito principal de usar o WalletConnect se baseia na digitalização de um código QR, que os usuários podem usar para verificar sua identidade e aprovar uma nova conexão com o aplicativo Web3.

Se você conhece carteiras como Pillar ou MetaMask – todas elas se integram diretamente ao WalletConnect. Isso também significa que você tem acesso a muitos recursos para desenvolvedores. Por último, mas não menos importante, o protocolo funciona com todas as principais blockchains, com mais cadeias sendo adicionadas com frequência.

#2. Abeto

O abeto é um Y Combinator apoiado startup que visa trazer o conceito de identidade descentralizada para áreas fora do blockchain. Este kit visa ajudar os usuários a verificar sua identidade digital em uma variedade de mídias: mídia social, sites pessoais e redes blockchain.

  Adblock vs Adblock Plus – Qual tem melhor desempenho?

Armazenar

Como você armazena mídia – vídeos, fotos, etc. – na Web3? Isso é feito principalmente usando protocolos de armazenamento de arquivos P2P.

#1. IPFS

IPFS é o protocolo de armazenamento P2P (peer-to-peer) líder mundial. Depois de fazer upload de um arquivo para o IPFS, esse arquivo é redimensionado, protegido por um hash personalizado e atribuído a uma impressão digital como seu identificador exclusivo.

Depois, outros nós (sistemas ou pessoas) que fazem parte dessa rede podem acessar o arquivo, verificá-lo e armazená-lo em seu cache. Uma vez armazenado em cache, o arquivo fica acessível a qualquer pessoa com o método de acesso correto.

Em última análise, o objetivo do IPFS não é apenas fornecer um sistema de armazenamento descentralizado. Mas também para garantir que o conteúdo tenha um período de várias décadas em vez de anos. Por exemplo, um site desaparece depois de um tempo e todo o seu conteúdo, incluindo mídia, é perdido. O IPFS fornece uma solução real para isso.

#2. Skynet

Skynet fornece compartilhamento de arquivos acessível usando a rede de nuvem Sia (descentralizada). Você pode realmente usá-lo diretamente da página inicial. Basta fazer o upload de um arquivo e você receberá um link. Dura 90 dias, a menos que você se inscreva para sua chave de API. No entanto, no contexto de desenvolvimento, o Skynet facilita a replicação do mesmo caso de uso, mas dentro de seu próprio aplicativo descentralizado.

#2. Base de arquivo

Base de arquivo é uma startup de SaaS que fornece um link direto com a API do Amazon S3. Você pode usar essa API para buscar dados de seus buckets do S3 e redistribuí-los em várias opções de armazenamento descentralizado.

Atualmente, o Filebase suporta opções de armazenamento baseadas em Web3, como Skynet, IPFS, Sia e Storj, entre outras. Como desenvolvedor, isso significa que você pode simplificar o processo de fornecimento de serviços de armazenamento descentralizado de arquivos para seus clientes.

Você também recebe 5 GB de armazenamento gratuito como um novo usuário, embora o preço seja razoável, mesmo para planos pagos.

Outras soluções de armazenamento Web3 notáveis:

  • Arweave. Arweave é um protocolo que permite armazenar dados de forma permanente e sustentável com uma única taxa inicial.
  • Filecoin. Armazene qualquer tipo de mídia em um ambiente de nuvem descentralizado.
  • Enxame. Um nó de armazenamento P2P autossustentável que é incentivado por contratos inteligentes Ethereum.
  • Aleph. Crie dApps e deixe o Aleph gerenciar o armazenamento baseado em nuvem para você.

API

Ao contrário de uma pilha tradicional baseada em banco de dados, os desenvolvedores usam uma API para interagir com o blockchain e solicitar ou armazenar dados nele. As APIs também são às vezes chamadas de Clientes.

  Como ativar o modo de latência ultrabaixa para gráficos NVIDIA

#1. O gráfico

O gráfico é uma solução de API tudo-em-um para conectar-se a vários blockchains. O objetivo dessa API é ajudar os desenvolvedores a acessar dados que, de outra forma, exigiriam a criação de algoritmos individuais. Por exemplo, os pontos de dados no blockchain derivam de endereços simples para transações complexas baseadas em contratos inteligentes.

Um exemplo disso seria rastrear o histórico de um NFT.

Embora seja possível rastrear o histórico de compras individuais com bastante facilidade, fica cada vez mais difícil à medida que você tenta entender as relações com as diferentes compras. Nesse caso, a API Graph fornece chamadas pré-criadas e diretórios de índice para ajudá-lo a visualizar rapidamente um caso de uso específico.

#2. Web3.js

Web3.js é a API JavaScript mais popular para interagir diretamente com o Ethereum. É usado principalmente para desenvolver aplicativos clientes que interagem com a cadeia Ethereum. A coleção de sub-bibliotecas incluída no Web3.js fornece funcionalidades como transferências, gerenciamento de contrato inteligente e muito mais.

#3. Alquimia

Alquimia cresceu rapidamente para se tornar uma das plataformas Web3 mais respeitadas por aí. A abordagem deles é educar os desenvolvedores sobre como construir e dimensionar rapidamente aplicativos Web3. E eles são capazes de fazer isso fornecendo uma API Blockchain sofisticada e um conjunto de Ferramentas de Desenvolvedor.

#4. useDApp

useDApp é uma estrutura baseada em React para interagir com a blockchain Ethereum. Ele consiste em React.js, a biblioteca Ethers.js, Waffle e componentes Web-3 React. Normalmente, é usado para criar front-ends de sites de fácil acesso que podem exibir várias consultas de dados com base nas necessidades do seu projeto.

A parte dianteira

Que tipo de frameworks os desenvolvedores estão usando para construir as interfaces front-end para projetos Web3?

#1. Reagir

A popularidade de Reagir é inigualável. E não é uma surpresa saber que também é a biblioteca de front-end mais popular para sites Web3. A arquitetura orientada a componentes significa que os desenvolvedores podem trabalhar em várias partes do front-end sem interferir no design principal.

Você pode conferir o Biblioteca Web3-React no GitHub para um ponto de partida sólido.

#2. Próximo

Next.js é o sucessor do React, embora nenhum deles seja diretamente afiliado. Projetos Web3 de grande escala exigem um enorme gerenciamento de recursos, e o Next.js vem com ferramentas nativas para projetos estáticos e dinâmicos e usados ​​por empresas como Binance, Bitscreener, Hashnode e outras.

Para um início rápido, não procure mais, Próxima Web3 Caldeira.

Introdução ao desenvolvimento Web3

É muito para absorver, especialmente se você está apenas começando agora. O fato é que as coisas estão mudando muito rápido neste campo. Embora os projetos iniciais fossem todos relacionados a NFT, hoje em dia há mais ênfase em redes descentralizadas e plataformas individuais de blockchain.

No que diz respeito a começar com o projeto Web3, esta referência deve ser suficiente. Também recomendo ficar por dentro do Twitter e do Discord, já que essas são as duas comunidades mais ativas para acompanhar as últimas tendências da Web3.