Pełna implementacja protokołu P2P w JavaScript

Protokół P2P w JavaScript

js-ipfs dostarcza implementację protokołu IPFS dla przeglądarek internetowych. Napisana w pełni w JavaScript działa w kontekstach takich jak: przeglądarka, Service Worker, WebExtension oraz Node.js, otwierając drzwi do świata nowych możliwości.

js-ipfs działa w kontekstach takich jak: przeglądarka, Service Worker, WebExtension oraz Node.js, otwierając drzwi do świata nowych możliwości.

Disable Animation
Biblioteka js-ipfs jest w stane Alfa.Kod źródłowy nie został jeszcze poddany audytowi bezpieczeństwa i nie powinien być używany do przechowywania i wymiany wrażliwych informacji.

Główne cechy

Zawiera wszystko co istotne w IPFS. Implementacja dostarcza również dodatkowe funkcje usprawniające pracę w przeglądarce. Idealny fundament do budowy aplikacji DWeb.

Uruchom w Node.js oraz przeglądarce

js-ipfs działa w Node.js, Electron oraz każdej nowoczesnej przeglądarce. Umożliwia presonalizację, dzięki czemu może być używana w dowolnym środowisku uruchomieniowym.

Pełna implementacja IPFS

Żadna funkcja nie została pominięta. js-ipfs nie jest lekkim klientem, jest pełną implementacją protokołu IPFS.

PubSub umożliwia komunikację w czasie rzeczywistym

Węzły IPFS mogę tworzyć tematyczne topologie sieciowe w celu rozgłaszania zdarzeń w czasie rzeczywistym.

Publikuj i pobieraj dane z sieci IPFS

IPFS został zaprojektowany aby wykorzystywać siłę Content Addressing oraz Process Addressing w celu odnajdywania węzłów posiadających treści których szukasz. Analogicznie, możesz dodać dowolne dane i mieć pewność, że inne węzły będą mieć do nich dostęp.

DAG API umożliwia przemieszczanie się po strukturach danych

IPFS używa IPLD (InterPlanetary Linked-Data), który jest modelem danych umożliwiającym interakcję z danymi z różnych źródeł takich jak git, blockchain i inne.

Wbudowany libp2p

libp2p jest modularnym stosem sieciowym stworzonym na potrzeby IPFS. Możliwy jest bezpośredni dostęp do libp2p, dzięki czemu możesz go wykorzystać we własnych aplikacjach.

Uruchom jako demon

js-ipfs może być uruchomiony jako demon udostępniający HTTP API. Dzięki temu może być używany analogicznie do go-ipfs.

Stwórz stabilne adresy dla zmiennych danych

Zawiera IPNS (Interplanetary Naming System): mechanizm publikacji zmiennych odnośników umożliwiający propagację zmian w kryptograficznie bezpieczny sposób.

Wprowadzenie

IPFS wspiera adresowanie oparte o treść (Content Addressing) dla wszystkich twoich danych. Możesz udostępnić lub pobrać dane za pomocą CID, unikalnego identyfikatora treści. Wypróbuj poniżej!

Dodawanie danych do IPFS

Wynik

Pobieranie danych z IPFS

Przy użyciu Javascript w przeglądarce lub Node.js

Wynik

Przy użyciu lini komend

Przy użyciu bramki HTTP

https://ipfs.io/ipfs/
Dowiedz się więcej

Service Worker jako bramka

Zmień tę stronę w pełni funkcjonalną bramkę IPFS bez zewnętrznego serwera, bez wysyłania zapytań HTTP. Właśnie tak, js-ipfs działający jako Service Worker jest w stanie pobierać dane bezpośrednio z IPFS!

Włącz Service Worker

Przykładowe projekty

Internet Archive w zdecentralizowanej formie. Przeglądaj ponad 40 milionów pozycji dzięki połączeniu bramki IPFS oraz interfejsu w javascript dla Firefox i Chrome.

Project Preview

TODO Title

Istnieje nieskończenie wiele zastosowań dla js-ipfs. Poniższe przykłady pokazują wybrane pomysły na to, co można zbudować z js-ipfs. Sprawdź je!

Stream Video through IPFS
Upload and send files

Czy masz pomysł który chcesz zasugerować? Kliknij tu!

Publikacje i prezentacje

Obejrzyj nowości, dema oraz prezentacje przygotowane przez społeczność na temat IPFS i JavaScript. Wkrótce dodamy wiele nowych materiałów z tegorocznych spotkań deweloperów.

IPFS on the Brave Browser, Alan Shaw

CRDTs as the foundation for Distributed Web Apps, Pedro Teixeira

A Regular JS Core Dev Call, join us!

Społeczność

js-ipfs jest projektem Open Source rozwijanym przez społeczność IPFS na licencji MIT. Istnieje wiele sposobów aby dołączyć: pomóż przy pisaniu specyfikacji, rozwijaj implementację oraz biblioteki, twórz przykładowe aplikacje i przewodniki, bierz udział w regularnych spotkaniach deweloperskich.

Dołącz do nas!