온전히 JavaScript로 구현된 완전 P2P 프로토콜
P2P JavaScript 프로토콜
js-ipfs는 IPFS 프로토콜을 브라우저에서 구현할 수 있는 길을 열어줍니다. 전부 JavaScript로 작성되었으며 브라우저, 서비스 워커, 확장 프로그램 그리고 Node.js에서 작동하며 여러 가능성을 보여줍니다.
js-ipfs는 브라우저, 서비스 워커, 확장 프로그램 그리고 Node.js에서 실행되며 여러 가능성을 보여줍니다.
기능
당신이 IPFS에 대해 알고 사랑하는 모든 것들로 이루어졌습니다. 이 구현은 브라우저에 몇 가지 특별한 기능과 추가적인 사항을 전달하며, 당신의 모든 DWeb 애플리케이션을 위한 유용한 도구입니다.
Node.js와 브라우저에서 작동
js-ipfs는 Node.js, Electron 과 어떠한 현대적인 브라우저에서든 즉시 사용할 수 있습니다. 그렇기 때문에 설계에 따라서 당신이 원하는 런타임에 맞춰 사용할 수 있습니다.
IPFS Stack의 모든 구현
구현되지 않은 기능이 없습니다. js-ipfs 는 라이트 클라이언트가 아니며, IPFS 프로토콜의 전체 구현을 담고 있습니다.
PubSub을 이용하여 다른 노드와 실시간으로 통신
IPFS 노드들은 이벤트를 실시간으로 전송하기 위해 관심사를 기반으로 네트워크 배치를 만들 수 있습니다.
IPFS 네트워크 어디에서나 파일의 추가와 탐색
IPFS는 당신이 찾고 있는 콘텐츠를 가지고 있는 노드를 네트워크에서 찾기 위해 콘텐츠 주소 지정 기능을 사용하도록 설계되었습니다. 같은 방법으로 당신은 데이터를 추가할 수 있고 다른 노드는 그것을 찾을 수 있습니다.
DAG API를 이용하여 해시로 연결된 데이터 구조 탐색
IPFS는 IPLD (InterPlanetary Linked-Data)를 사용하며, 이 모델은 git, Blockchain과 같은 다양한 데이터 소스와 상호 작용할 수 있습니다.
libp2p 내장
libp2p는 IPFS를 위해 만들어진 Modular Networking Stack이며 그리고 IPFS를 통해 당신의 애플리케이션에 직접적으로 사용할 수 있습니다.
데몬으로 실행가능
js-ipfs는 또한 데몬으로 실행할 수 있어서, go-ipfs로 HTTP API를 사용했던 것 처럼 js-ipfs를 이용하여 동일하게 상호 작용할 수 있습니다.
변경되는 데이터에 안정적인 주소 생성
이것을 IPNS(Interplanetary Naming System)라 부릅니다. 증명할 수 있고 인증된 방식으로 업데이트를 배포하기 위해, 변경할 수 있는 포인터(레코드)를 작성하는 방법입니다.
시작하기
IPFS는 DWeb의 모든 데이터에 대해서 원시적인 콘텐츠 주소를 제공합니다. 그것은 콘텐츠 식별자인 CID(Content IDentifier)를 통해 네트워크에 데이터를 쓰거나, 기존 데이터를 가져올 수 있습니다. 아래에서 체험해 보세요.
IPFS에 데이터 추가하기
결과
IPFS로부터 데이터 가져오기
Browser 또는 Node.js에서 JavaScript로 사용하기
결과
CLI 사용하기
HTTP 게이트웨이 사용하기
https://ipfs.io/ipfs/서비스 워커 게이트웨이
이 페이지를 IPFS 게이트웨이로 전환하세요. 서버를 작동시키거나, HTTP를 사용하여 네트워크에서 콘텐츠를 가져오지 않아도 됩니다. 그래요! 서비스 워커 게이트웨이를 가진 js-ipfs가 IPFS 네트워크에 직접 연결됩니다.
이것을 이용하여 어떤 사람들이 무엇을 만들고 있을까요?
JS-IPFS를 사용해 만들 수 있는 것
당신이 js-ipfs를 사용하는 가능성은 무한합니다. 다음은 js-ipfs로 만들 수 있는 아이디어를 제공합니다. 한 번 시도해 보세요!
어떤 아이디어와 제안을 가지고 있나요?여기에 쓰세요!
발행물 & 대담
IPFS의 JavaScript IPFS 커뮤티니의 데모들과 다른 대담의 프로젝트 업데이트를 지켜보세요. 우리는 곧 수십개의 IPFS 개발자 대담을 추가할 예정입니다.
