Skip to content

Build real-time collaborative DApps on top of IPFS

License

Notifications You must be signed in to change notification settings

peer-base/peer-base

Repository files navigation

peer-base

Build real-time collaborative DApps on top of IPFS

Build Status Greenkeeper badge made by Protocol Labs

Documentation

Install

$ npm install peer-base

Import

const PeerBase = require('peer-base')

API

API docs

Run example app

Clone this repo.

$ cd peer-base
$ cd examples/react-app
$ npm install

In a different window, on the same dir, start the rendezvous server:

$ npm run start:rv

In a different window, on the same dir, run the app server:

$ npm start

Open http://localhost:3000 and test the app.

Tests

Clone this repo and run:

$ npm install
$ npm test

Testing a deployed pinner

If you want to make sure your deployed pinner is working correctly, there is a utility-test that you can run with npm run test:post-deploy that will ensure your deployed pinner works correctly.

First you need to export environment variables to ensure the assertion values are correct for your environment, then you can run the test. Example:

export PEER_BASE_APP_NAME=peer-pad/2
export PEER_BASE_SWARM_ADDRESS=/dns4/localhost/tcp/9090/ws/p2p-websocket-star
export PEER_BASE_PINNER_ID=Qmb9WDZUnUzEmZwkbMMGi4cV65F1sqcQa49dfZy9baRBJo
npm run test:post-deploy

Infrastructure

The infrastructure for peer-base and related applications is managed via https://github.com/peer-base/peer-base/

Debug

You can activate the debugging logs by manipulating the DEBUG environment variable. Example:

$ DEBUG=peer-star:* npm test

For file-specific DEBUG values, see the source code and look for usages of the debug package.

Lead Maintainer

Jim Pick

Contribute

Peer-base and the IPFS implementation in JavaScript is a work in progress. As such, there's a few things you can do right now to help out:

  • Check out existing issues. This would be especially useful for modules in active development. Some knowledge of IPFS may be required, as well as the infrastructure behind it - for instance, you may need to read up on p2p and more complex operations like muxing to be able to help technically.
  • Perform code reviews. More eyes will help (a) speed the project along, (b) ensure quality, and (c) reduce possible future bugs.
  • Add tests. There can never be enough tests.

Want to hack on peer-base?

License

MIT