ConsenSys/ipfs.js

Name: ipfs.js

Owner: ConsenSys

Description: Wrapper for node-ipfs-api

Created: 2015-08-24 23:58:02.0

Updated: 2018-01-10 19:29:26.0

Pushed: 2016-08-30 13:48:43.0

Homepage: null

Size: 953

Language: JavaScript

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

?? ATTENTION ??

For this library to work on both nodejs and the browser, it depends on a old version of js-ipfs-api to avoid a browserify issue with later versions

For a very lightweight browser-only library, check out browser-ipfs

Otherwise if using with node.js or a browser via webpack or <script\>, you probably want the most recent stable js-ipfs-api

ipfs.js

Wrapper for node-ipfs-api

Browser friendly

Run npm install ipfs-js

Or reference dist/ipfs.min.js inside a <script /> to expose the global ipfs

Example
1) Set IPFS CORS access
   ipfs config --json API.HTTPHeaders.Access-Control-Allow-Origin '["*"]'
   ipfs config --json API.HTTPHeaders.Access-Control-Allow-Methods '["PUT", "GET", "POST"]'
   ipfs config --json API.HTTPHeaders.Access-Control-Allow-Credentials '["true"]'
2) Start IPFS
   ipfs daemon
3) Upload example directory

git clone https://github.com/ConsenSys/ipfs.js && cd ipfs.js

For non-default ipfs configurations, you can run ./example.url to ipfs add -r example and print the local gateway's url

4) Open IPFS gateway

Navigate to the url echoed from ./example.url in the browser, or run ./example.url | xargs open to open it on OSX

Methods
ipfs.setProvider({host: 'localhost', port: '5001'})
ipfs.setProvider(require('ipfs-api')('localhost', '5001'))

node.js compatibility for ipfs.js

ipfs.add(textOrBuffer, callback)
ipfs.add("Testing...", function(err, hash) {
    if (err) throw err; // If connection is closed
    console.log(hash);  // "Qmc7CrwGJvRyCYZZU64aPawPj7CJ56vyBxdhxa38Dh1aKt"
});
ipfs.cat(hash, callback)
ipfs.cat("Qmc7CrwGJvRyCYZZU64aPawPj7CJ56vyBxdhxa38Dh1aKt", function(err, buffer) {
    if (err) throw err;
    console.log(buffer.toString());     // "Testing..."
});
ipfs.catText(hash, callback)
ipfs.cat("Qmc7CrwGJvRyCYZZU64aPawPj7CJ56vyBxdhxa38Dh1aKt", function(err, text) {
    if (err) throw err;
    console.log(text);  // "Testing..."
});
ipfs.addJson(json, callback) ipfs.catJson(hash, callback) ipfs.api.* - all methods from node-ipfs-api ipfs.utils.base58ToHex(base58) ipfs.utils.hexToBase58(hex)

This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.