Code Monkey home page Code Monkey logo

ipfs.js's Introduction

⚠️ 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'})

  • localhost and 5001 are the defaults when calling without arguments
  • is also equivalent to ipfs.setProvider({host: '/ip4/127.0.0.1/tcp/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)

ipfs.js's People

Contributors

ckeenan avatar coder5876 avatar imcu avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.