0.3.2 • Published 3 years ago

@kleros/file-to-ipfs v0.3.2

Weekly downloads
77
License
MIT
Repository
-
Last release
3 years ago

File to IPFS

Utility to upload files to Kleros IPFS node.

It can be used as a standalone CLI tool or a node module.

Installation

yarn add @kleros/file-to-ipfs
# npm install --save @kleros/file-to-ipfs

Usage

CLI

Usage:
    Regular files:
      cli.js --file <file-path> [-v] [--rename <new-name>] [-e <ipfs-endpoint>]
    Directories inside a zip file that will be unzipped:
      cli.js --zipped-directory <zip-file-path> [-v] [--rename <new-name>] [-e
      <ipfs-endpoint>]

Options:
  -f, --file              The path of the file                          [string]
  -z, --zipped-directory  The path of the zip file containing a directory
                                                                        [string]
  -r, --rename            The new file name                             [string]
  -e, --endpoint          The IPFS endpoint
                                    [string] [default: "https://ipfs.kleros.io"]
  -v, --verbose           Whether it should display the full IPFS upload result
                          or not
  -h, --help              Show help                                    [boolean]
  -V, --version           Show version number                          [boolean]

Module

fileToIpfs

Default usage.

fileToIpfs(filePath, { rename?: string } = {}) => Promise<string>;

Params:

  • filePath: The path to the file in the file system.
  • rename: Provided if the name of the uploaded file should be different than the original.
  • isZippedDirectory: Whether the file should be treated as a zipped directory or not.

Returns:

  • Promise<string>: a promise for the IPFS path of the uploaded file.

Example:

const fileToIpfs = require('@kleros/file-to-ipfs');

// Regular file
(async() => {
    const ipfsPath = await fileToIpfs('<path-to-file>');
    console.log(ipfsPath);
})();

// Zipped directory
(async() => {
    const ipfsPath = await fileToIpfs('<path-to-zip-file>', { isZippedDirectory: true });
    console.log(ipfsPath);
})();

fileToIpfs.factory

Allows to create another file-to-ipfs instance to upload files to a different IPFS endpoint.

fileToIpfsFactory({ endpoint: string }) => fileToIpfs

Params:

  • endpoint: The IPFS endpoint.

Returns:

  • fileToIpfs: a new instance of the fileToIpfs function.

Example:

const { factory } = require('@kleros/file-to-ipfs');

const fileToIpfs = factory({ endpoint: 'https://gateway.ipfs.io' });

(async() => {
    const ipfsPath = await fileToIpfs('<path-to-file>');
    console.log(ipfsPath);
})();

fileToIpfs.DEFAULT_IPFS_ENDPOINT

The value of the default IPFS endpoint

const DEFAULT_IPFS_ENDPOINT: string = 'https://ipfs.kleros.io'
0.3.2

3 years ago

0.3.0

3 years ago

0.3.1

3 years ago

0.2.1

3 years ago

0.2.0

3 years ago

0.1.1

3 years ago

0.1.0

3 years ago