Ana içeriğe atla

React Hooks

bitsocial-react-hooks paketi, Bitsocial protokolüyle etkileşim kurmak için tanıdık bir React hook API'si sunar. Akışları, yorumları ve yazar profillerini getirme, hesapları yönetme, içerik yayımlama ve topluluklara abone olma işlerini üstlenir — hepsini merkezi bir sunucuya bağlı kalmadan.

Bu kütüphane, 5chan ve diğer Bitsocial istemci uygulamalarının kullandığı birincil arayüzdür.

Not

bitsocial-react-hooks şu anda npm'de yayımlanmıyor; doğrudan GitHub'dan kullanılıyor.

Kurulum​

Paket henüz npm'de olmadığından, belirli bir commit hash'ine sabitleyerek doğrudan GitHub'dan kurun:

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

<commit-hash> yerine hedeflemek istediğiniz commit'i yazın.

API'ye Genel Bakış​

Hook'lar işlevsel kategorilere ayrılmıştır. Aşağıda her kategoride en sık kullanılan hook'ların özeti yer alır. İmzaların, parametrelerin ve dönüş tiplerinin tamamı için GitHub'daki tam API referansına bakın.

Hesaplar​

Yerel kullanıcı hesaplarını, kimliği ve ayarları yönetir.

  • useAccount(accountName?) -- etkin (ya da adı verilen) hesap nesnesini döndürür
  • useAccounts() -- yerelde saklanan tüm hesapları döndürür
  • useAccountComments(options?) -- etkin hesabın yayımladığı yorumları döndürür

Yorumlar​

Tek tek yorumları ve konu zincirlerini getirir, bunlarla etkileşim kurar.

  • useComment(commentCid?) -- CID'sine göre tek bir yorum getirir
  • useComments(commentCids?) -- birden çok yorumu toplu olarak getirir
  • useEditedComment(comment?) -- bir yorumun en son düzenlenmiş sürümünü döndürür

Topluluklar​

Topluluk meta verilerini ve ayarlarını alır.

  • Tekil topluluk sorgulama hook'u -- adrese göre bir topluluk getirir
  • Çoklu topluluk sorgulama hook'u -- birden çok topluluğu getirir
  • Topluluk istatistikleri hook'u -- abone ve gönderi sayılarını döndürür

Yazarlar​

Yazar profillerini ve meta verilerini sorgular.

  • useAuthor(authorAddress?) -- bir yazar profili getirir
  • useAuthorComments(options?) -- belirli bir yazarın yorumlarını döndürür
  • useResolvedAuthorAddress(authorAddress?) -- okunabilir bir adresi (örneğin ENS) protokol adresine çözümler

Akışlar​

İçerik akışlarına abone olur ve bunları sayfalar hâlinde getirir.

  • useFeed(options?) -- bir ya da daha fazla topluluktan gelen gönderilerin sayfalanmış akışını döndürür
  • useBufferedFeeds(feedOptions?) -- daha hızlı görüntüleme için birden çok akışı önceden arabelleğe alır
  • useAuthorFeed(authorAddress?) -- belirli bir yazarın gönderilerinden oluşan akışı döndürür

Eylemler​

İçerik yayımlar ve yazma işlemlerini gerçekleştirir.

  • usePublishComment(options?) -- yeni bir yorum ya da yanıt yayımlar
  • usePublishVote(options?) -- olumlu veya olumsuz oy verir
  • useSubscribe(options?) -- bir topluluğa abone olur ya da aboneliği bırakır

Durumlar ve RPC​

Bağlantı durumunu izler ve uzaktaki bir Bitsocial arka plan hizmetiyle etkileşim kurar.

  • useClientsStates(options?) -- IPFS/pubsub istemcilerinin bağlantı durumunu döndürür
  • RPC ayarları hook'u -- geçerli RPC arka plan hizmeti yapılandırmasını döndürür

Geliştirme​

Hook kütüphanesi üzerinde yerelde çalışmak için:

Ön koşullar: Node.js, etkinleştirilmiş Corepack, Yarn 4

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

Test ve derleme komutları için deponun README dosyasına bakın.

Bağlantılar​