Pular para o conteúdo principal

React Hooks

O pacote bitsocial-react-hooks oferece uma API de hooks React familiar para interagir com o protocolo Bitsocial. Ele cuida da busca de feeds, comentários e perfis de autores, do gerenciamento de contas, da publicação de conteúdo e da inscrição em comunidades -- tudo sem depender de um servidor central.

Esta biblioteca é a interface principal usada pelo 5chan e por outras aplicações cliente do Bitsocial.

observação

O bitsocial-react-hooks é consumido hoje diretamente do GitHub, em vez de publicado no npm.

Instalação​

Como o pacote ainda não está no npm, instale-o diretamente do GitHub, fixando um hash de commit específico:

yarn add https://github.com/bitsocialnet/bitsocial-react-hooks.git#<commit-hash>

Substitua <commit-hash> pelo commit que você quer usar.

Visão geral da API​

Os hooks estão organizados em categorias funcionais. Abaixo está um resumo dos hooks mais usados em cada categoria. Para assinaturas completas, parâmetros e tipos de retorno, consulte a referência completa da API no GitHub.

Contas​

Gerencie contas de usuário locais, identidade e configurações.

  • useAccount(accountName?) -- retorna o objeto da conta ativa (ou da conta indicada)
  • useAccounts() -- retorna todas as contas armazenadas localmente
  • useAccountComments(options?) -- retorna os comentários publicados pela conta ativa

Comentários​

Busque comentários e discussões individuais e interaja com eles.

  • useComment(commentCid?) -- busca um único comentário pelo CID
  • useComments(commentCids?) -- busca vários comentários em lote
  • useEditedComment(comment?) -- retorna a versão editada mais recente de um comentário

Comunidades​

Obtenha metadados e configurações de comunidades.

  • Hook de consulta de uma única comunidade -- busca uma comunidade pelo endereço
  • Hook de consulta de várias comunidades -- busca várias comunidades
  • Hook de estatísticas da comunidade -- retorna a contagem de inscritos e de publicações

Autores​

Consulte perfis e metadados de autores.

  • useAuthor(authorAddress?) -- busca o perfil de um autor
  • useAuthorComments(options?) -- retorna os comentários de um autor específico
  • useResolvedAuthorAddress(authorAddress?) -- resolve um endereço legível por pessoas (por exemplo, ENS) para o endereço de protocolo correspondente

Feeds​

Inscreva-se em feeds de conteúdo e pagine-os.

  • useFeed(options?) -- retorna um feed paginado de publicações de uma ou mais comunidades
  • useBufferedFeeds(feedOptions?) -- pré-carrega vários feeds em buffer para renderizar mais rápido
  • useAuthorFeed(authorAddress?) -- retorna um feed de publicações de um autor específico

Ações​

Publique conteúdo e execute operações de escrita.

  • usePublishComment(options?) -- publica um novo comentário ou resposta
  • usePublishVote(options?) -- registra um voto positivo ou negativo
  • useSubscribe(options?) -- inscreve ou cancela a inscrição em uma comunidade

Estados e RPC​

Acompanhe o estado da conexão e interaja com um daemon Bitsocial remoto.

  • useClientsStates(options?) -- retorna o estado de conexão dos clientes IPFS/pubsub
  • Hook de configurações de RPC -- retorna a configuração atual do daemon RPC

Desenvolvimento​

Para trabalhar na biblioteca de hooks localmente:

Pré-requisitos: Node.js, Corepack ativado, Yarn 4

git clone https://github.com/bitsocialnet/bitsocial-react-hooks.git
cd bitsocial-react-hooks
corepack enable
yarn install

Consulte o README do repositório para conhecer os comandos de teste e de build.