General-grants-program: Explorador de blocos de código aberto

Criado em 17 jul. 2018  ·  9Comentários  ·  Fonte: w3f/General-Grants-Program

Gostaríamos de colaborar com as equipes para criar um explorador de blocos de código aberto para a rede Polkadot.

General Component Sought

Comentários muito úteis

Comecei a trabalhar no Polkadot (ou Substrate generalizado) Explorer hoje.

Breve introdução: meu nome é Emiel e sou organizador do encontro Polkadot NL (encontro inaugural em 2 de outubro de 2018 em Roterdã). Além disso, estou trabalhando em um explorador de blocos multi-cadeia chamado WEB3SCAN. Um protótipo inicial para este explorador multi-cadeia está disponível em https://explorer.web3scan.net

O PLANO
Pretendo construir um Block Explorer para Polkadot (ou mais generalizado para qualquer Instanciação de Substrato). A ideia é começar com uma pilha que usei para construir o 'Multi-chain EVM Block Explorer' do WEB3SCAN.
A pilha é composta por:

1) um harvester (que busca chamadas RPC e as coloca em um banco de dados, indexa, enriquece, agrega os dados)
2) um RDBMS (com todos os dados indexados, enriquecidos e agregados)
3) uma camada de API (com métodos de API gordos para os vários objetos no RDBMS)
4) uma GUI (uma interface de usuário para a camada API/RDBMS)

Embora este projeto seja inicialmente desenvolvido sob seu próprio nome de projeto (POLKASCAN), ele provavelmente se moverá sob o guarda-chuva WEB3SCAN (e o explorador multi-cadeia generalizado mencionado acima).

Eu estarei trabalhando principalmente nisso sozinho (em tempo integral) nos próximos dois meses. Os objetivos de curto prazo são preparar para uma apresentação chamada: 'Construindo um Polkadot/Substrate Explorer' para o inaugural Polkadot NL Meetup em Rotterdam em 2 de outubro de 2018.

O QUE PRECISAMOS
Temos a maior parte da experiência interna para construir Exploradores de Blocos, no entanto, precisamos muito da assistência da Web3 Foundation para mobilizar a Parity para adicionar alguns endpoints / métodos extras muito necessários ao Polkadot Client. Esses requisitos amadurecerão nas próximas semanas, quando começarmos nosso desenvolvimento inicial.

Exemplo: Um exemplo claro e inicial é que atualmente somos capazes de coletar os cabeçalhos dos blocos desde o chaintip até o genesis, mas atualmente não há como (ainda) obter dados no corpo do bloco, como 'extrínsecos' (transações) . Claro que entendo que a tecnologia está em um estágio muito inicial, mas espero contribuir para tornar o cliente o mais amigável possível para projetos de ecossistema no estilo Block Explorer.

Todos 9 comentários

Comecei a trabalhar no Polkadot (ou Substrate generalizado) Explorer hoje.

Breve introdução: meu nome é Emiel e sou organizador do encontro Polkadot NL (encontro inaugural em 2 de outubro de 2018 em Roterdã). Além disso, estou trabalhando em um explorador de blocos multi-cadeia chamado WEB3SCAN. Um protótipo inicial para este explorador multi-cadeia está disponível em https://explorer.web3scan.net

O PLANO
Pretendo construir um Block Explorer para Polkadot (ou mais generalizado para qualquer Instanciação de Substrato). A ideia é começar com uma pilha que usei para construir o 'Multi-chain EVM Block Explorer' do WEB3SCAN.
A pilha é composta por:

1) um harvester (que busca chamadas RPC e as coloca em um banco de dados, indexa, enriquece, agrega os dados)
2) um RDBMS (com todos os dados indexados, enriquecidos e agregados)
3) uma camada de API (com métodos de API gordos para os vários objetos no RDBMS)
4) uma GUI (uma interface de usuário para a camada API/RDBMS)

Embora este projeto seja inicialmente desenvolvido sob seu próprio nome de projeto (POLKASCAN), ele provavelmente se moverá sob o guarda-chuva WEB3SCAN (e o explorador multi-cadeia generalizado mencionado acima).

Eu estarei trabalhando principalmente nisso sozinho (em tempo integral) nos próximos dois meses. Os objetivos de curto prazo são preparar para uma apresentação chamada: 'Construindo um Polkadot/Substrate Explorer' para o inaugural Polkadot NL Meetup em Rotterdam em 2 de outubro de 2018.

O QUE PRECISAMOS
Temos a maior parte da experiência interna para construir Exploradores de Blocos, no entanto, precisamos muito da assistência da Web3 Foundation para mobilizar a Parity para adicionar alguns endpoints / métodos extras muito necessários ao Polkadot Client. Esses requisitos amadurecerão nas próximas semanas, quando começarmos nosso desenvolvimento inicial.

Exemplo: Um exemplo claro e inicial é que atualmente somos capazes de coletar os cabeçalhos dos blocos desde o chaintip até o genesis, mas atualmente não há como (ainda) obter dados no corpo do bloco, como 'extrínsecos' (transações) . Claro que entendo que a tecnologia está em um estágio muito inicial, mas espero contribuir para tornar o cliente o mais amigável possível para projetos de ecossistema no estilo Block Explorer.

Parece ótimo, ansioso por atualizações.
Ouvi dizer que @tomusdrw está trabalhando em um RPC para obter extrínsecos para um bloco por hash já!

Tópico do Twitter com designs de tela para o Polkadot Explorer 'Polkascan': https://twitter.com/polkascan/status/1039501738842226689

___landing
0 00-home
1 00-activity_home
1 01-activity_block_overview
1 02-activity_block_detail1
1 03-activity_block_detail2
1 04-activity_block_detail3
1 05-activity_block_detail4
2 00-agents_home
2 01-agent_all_overview
3 00-analysis_home
4 00-tools_home
5 00-search_home

Uma primeira versão (estática, mas navegável) do Polkascan Explorer está disponível em https://polkascan.io Vá conferir e nos diga o que você pensa!!

https://twitter.com/polkascan/status/1042745927600099328

Ótimo começo/progresso @emielvanderhoek

Atualizar:

Polkascan (https://polkascan.io) agora suporta várias cadeias. Atualmente, mostramos permitir a exploração das seguintes cadeias:

  1. Polkadot (poc-2): https://polkascan.io/n-poc2/poc-2/ (Esta é a cadeia de retransmissão)
  2. BBQ-Birch (master) Candidato a Parachain: https://polkascan.io/n-pre/bbqbirch/ (Esta é uma plataforma de contrato inteligente WASM)

Observe que esses links podem quebrar a qualquer momento devido a atualizações. Siga os links da entrada principal em https://polkascan.io para os caminhos de clique atuais.

Optamos por um design com código de cores por rede. Atualmente a corrente Polkadot Relaychain tem a cor rosa e a corrente BBQ Birch tem a cor verde.

NÃO estamos atualizando blocos em ATM em tempo real. Atualmente trabalhamos com instantâneos de dados. As atualizações de bloco em tempo real das redes suportadas pelo Polkascan seguirão algum tempo depois que o Polkadot Relaychain passar para o POC-3.

Com esta atualização, o Polkscan é capaz de suportar QUALQUER* instância de substrato. Em nossa versão atual, reduzimos tudo ao mínimo, que é idêntico para qualquer instância do Substrate. O 'mestre' atual e o próximo POC3 para Polkadot (se eu estiver correto) diferirão apenas no tempo de execução. Estes são todos os objetos que diferenciam uma instância de Substrate de outra.

Os objetos de tempo de execução (chamadas, eventos e função de armazenamento) são especificados através dos metadados que você pode obter (e decodificar) através do RPC: chain_getMetadata(). Esses metadados devem ser vistos como a ABI para o tempo de execução. O Polkascan mostrará o objeto de metadados de tempo de execução (decodificado) na interface do usuário no final desta semana.

No momento, estamos trabalhando em como dar suporte a esses objetos de tempo de execução flexíveis no explorador Polkascan. Por exemplo, o tempo de execução Polkadot Relaychain tem um objeto 'parachains' e a cadeia BBQ Birch não.

Atualizações do Twitter (e algumas imagens):
https://twitter.com/polkascan/status/1051837686166814721
https://twitter.com/polkadotnetwork/status/1052036003219697664
https://twitter.com/emielvanderhoek/status/1051841796089761792

Atualizar:

Polkascan (BBQ Birch) agora contém todos os eventos de tempo de execução.
Eventos de bétula para churrasco: https://polkascan.io/n-pre/bbqbirch/activity/event/
Churrasco Birch Events (extrínseco acionado): https://polkascan.io/n-pre/bbqbirch/activity/event/extrinsic/
Churrasco Birch Events (outros): https://polkascan.io/n-pre/bbqbirch/activity/event/finalization/
As páginas de detalhes do evento mostram os parâmetros de evento decodificados.

Na próxima semana, adicionarei visualizações de eventos filtradas, como:
1) saldo.transferências
2) aposta.recompensas
3) alguns dos eventos de tesouraria.

O Polkascan (Polkadot) terá esses recursos quando o POC-3 chegar (em breve).
Além disso: as páginas de detalhes extrínsecos agora também contêm os parâmetros extrínsecos decodificados.

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

bobjiang picture bobjiang  ·  5Comentários

Web3Foundation picture Web3Foundation  ·  27Comentários

EdwardAThomson picture EdwardAThomson  ·  6Comentários

EdwardAThomson picture EdwardAThomson  ·  17Comentários

Web3Foundation picture Web3Foundation  ·  82Comentários