@datadepo/ipfs
v0.1.0
Published
IPFS HTTP Client wrapper
Downloads
19
Readme
Getting Started
$ npm i --save @datadepo/ipfsFunctions
init() async
Description This function connects to the node you provide via the
url <String>param. You can also pass along a API call action using theaction <String>parameter.
Parameters
| Parameter | Type | Required | Description |
| ----------- | -------- | ------------- | --------------------------------------------------------------|
| url | <String> | Yes | HTTP URL of the IPFS node you would like to use. |
| action | <String> | No | The type of IPFS Node API call you would like to make, currently 'add' is the action available. |
| file | <multipart-form-data> | No | The file you would like to upload to your IPFS Node |
Example
// controller.js
import { init } from "@datadepo/ipfs";
const someFunction = async (req, res) => {
...
const { yourFile } = req.files;
const ipfsFileData = await init({
url: <IFPS_NODE_HTTP_URL>,
action: <TYPE_OF_IPFS_API_CALL>,
file: yourFile
});
console.log('IPFS Data: ', ipfsFileData);
...
};Expected response result
{
client: { /*ipfs node client object */ },
data: { // action response data, I.E: 'add'
path: 'test.json',
cid: CID(QmaKzZnvoSU9Tw1roVZ3LB2LngZCGCskvRZ7tDXRNHuNME),
size: 44,
ipfsUrl: 'https://ipfs.io/ipfs/QmaKzZnvoSU9Tw1roVZ3LB2LngZCGCskvRZ7tDXRNHuNME'
}
}API Call Functions
add() async
Description This function is used to add a
<multipart-form-data>encode file to the node client provide. It also handles the data type conversion from<Buffer>to<Uint8Array>.
Parameters
| Parameters | Type | Required | Description |
| --------------- | -------------- | ---------- | ------------------------------------------------- |
| client | <Object> | Yes | The client object of the IPFS Node you're connected to. |
| file | <multipart-form-data> | Yes | The file you would like to upload to the IPFS Node provided in the client parameter. |
To-do list
- [X] Create Functionality to connect to a ipfs node via HTTP.
- [X] Create Functionality to upload files to a ipfs node via HTTP.
- [ ] Create Functionality to pin files to a ipfs node via HTTP.
Feel free to make suggestions by adding to the to-do list section in this file and creating a pull request to this repository Package created by Data Depo, a subsidiary company of AppStack Inc.
