Giter Club home page Giter Club logo

cordova-plugin-ipfs's Introduction

cordova-plugin-ipfs

A simple Cordova Plugin that wraps go-ipfs v0.4.8. It fetches the go-ipfs ARM binaries archive, extracts it and offers a simple way of initing the IPFS repo, starting and stopping the IPFS daemon.

IPFS

IPFS is a new hypermedia distribution protocol, addressed by content and identities. IPFS enables the creation of completely distributed applications. It aims to make the web faster, safer, and more open.

More here:

https://github.com/ipfs/ipfs

https://github.com/ipfs/go-ipfs

Want to hack on IPFS?

Platforms

  • Android

Installation

  1. $ cordova plugin add http://github.com/xSkyripper/cordova-plugin-ipfs.git

  2. Add jniLibs.srcDirs = ['libs'] in /path/to/project/platforms/android/build.gradle ...

android {
    sourceSets {
        main {
            ...
            jniLibs.srcDirs = ['libs']
        }
    }

because the plugin uses a custom jar library for archive extraction.

Usage

  • Initing with ipfs.init(configObject, winCb, errCb)

configObject needs to have keys "src", "appFilesDir", "resetRepo"

Example:

    var ipfs = new CordovaIpfs();
    var appFilesPath = cordova.file.dataDirectory.split("file://")[1] + "files/";

    ipfs.init({
        src: "https://dist.ipfs.io/go-ipfs/v0.4.8/go-ipfs_v0.4.8_linux-arm.tar.gz",
        appFilesDir: appFilesPath,
        resetRepo: false
    }, function(res) {
        // success callback
    }, function(err) {
        // error callback
    });
  • Starting the daemon with ipfs.start(winCb, errCb)
    ipfs.start(function(res){
        // success callback
    }, function(err){
        // error callback
    });
  • Stopping the daemon with ipfs.stop(winCb, errCb)
    ipfs.stop(function(res){
        // success callback
    }, function(err){
        // error callback
    });

License

This software is released under the Apache 2.0 License.

cordova-plugin-ipfs's People

Contributors

xskyripper 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.