js-mcs-sdk-staging
v1.0.0
Published
A SDK for the MCS service. It provides a convenient interface for working with the MCS API from a web browser or Node.js
Downloads
4
Readme
js-mcs-sdk-semiprod
Table of Contents
Introduction
A javascript software development kit for the Multi-Chain Storage (MCS) https://mcs.filswan.com service. It provides a convenient interface for working with the MCS API from a web browser or Node.js. This SDK has the following functionalities:
- POST upload file to Filswan IPFS gate way
- POST make payment to swan filecoin storage gate way
- POST mint asset as NFT
- GET list of files uploaded
- GET files by cid
- GET status from filecoin
Prerequisites
Node.js - v16.13.0 (npm v8.1.0)
Polygon Mumbai Testnet Wallet - Metamask Tutorial
Polygon Mumbai Testnet RPC - Signup via Alchemy
You will also need Testnet USDC and MATIC balance to use this SDK. Swan Faucet Tutorial
MCS API
For more information about the API usage, check out the MCS API documentation.
Usage
Instructions for developers working with MCS SDK and API.
Installation
Install the package using npm
npm init -y
npm install js-mcs-sdk-semiprod
Getting Started
First you should set your private key and RPC-url as environment variables in a .env
file
PRIVATE_KEY=<PRIVATE_KEY>
RPC_URL=https://polygon-mumbai.g.alchemy.com/v2/<API_KEY>
Example of uploading a single file using the MCS SDK.
require('dotenv').config()
const { mcsSDK } = require('js-mcs-sdk')
const fs = require('fs')
// set up js-mcs-sdk
const mcs = new mcsSDK({
privateKey: process.env.PRIVATE_KEY,
rpcUrl: process.env.RPC_URL,
})
async function main() {
const testFile = JSON.stringify({ address: mcs.publicKey })
const fileArray = [{ fileName: `${mcs.publicKey}.txt`, file: testFile }]
const uploadResponse = await mcs.upload(fileArray)
console.log(uploadResponse)
}
main()
Documentation
For more examples please see the SDK documentation or the example directory in the sdk-test repository, which contains sample code for all SDK functionalities
Contributing
Feel free to join in and discuss. Suggestions are welcome! Open an issue or Join the Discord!
Sponsors
This project is sponsored by Filecoin Foundation
Flink SDK - A data provider offers Chainlink Oracle service for Filecoin Network