The @RenthubBTFS
SDK is designed to simplify interactions with the Renthub ecosystem. It supports uploading files and JSON data, as well as retrieving data from Renthub.
To get started with the @RenthubBTFS
SDK, install it via npm:
npm i @ellumina/renthub-btfs
To use the SDK, you need to initialize an instance of the RentHub
class with your API key:
const RentHub = require("@ellumina/renthub-btfs").default;
const fs = require("fs");
const instance = new Renthub('your-api-key-here');
Replace 'your-api-key-here'
with your actual API key.
The SDK provides two modules: dev
and rental
. Each module includes three main functions for interacting with RentHub.
Uploads a file to RenthubBTFS.
Parameters:
-
stream
: A readable stream of the file to be uploaded.
Example:
const stream = fs.createReadStream("path/to/your/file.png");
instance.dev.pinFile(stream)
.then((data) => {
console.log("File pinned successfully:", data);
})
.catch((err) => {
console.error("Error pinning file:", err);
});
Uploads a JSON object to RenthubBTFS.
Parameters:
-
json
: A JavaScript object to be uploaded.
Example:
instance.dev.pinJson({ "hello": "world" })
.then((data) => {
console.log("JSON pinned successfully:", data);
})
.catch((err) => {
console.error("Error pinning JSON:", err);
});
Retrieves a JSON object from RenthubBTFS using its hash.
Parameters:
-
hash
: The hash of the JSON object stored in RenthubBTFS.
Example:
instance.dev.getJson("file-hash-here")
.then((data) => {
console.log("JSON data retrieved:", data);
})
.catch((err) => {
console.error("Error retrieving JSON:", err);
});
The rental
module functions are similar to those in the dev
module but are used for different endpoints or purposes.
Example:
const stream = fs.createReadStream("path/to/your/file.png");
instance.rental.pinFile(stream)
.then((data) => {
console.log("File pinned successfully:", data);
})
.catch((err) => {
console.error("Error pinning file:", err);
});
Example:
instance.rental.pinJson({ "hello": "world" })
.then((data) => {
console.log("JSON pinned successfully:", data);
})
.catch((err) => {
console.error("Error pinning JSON:", err);
});
Example:
instance.rental.getJson("file-hash-here")
.then((data) => {
console.log("JSON data retrieved:", data);
})
.catch((err) => {
console.error("Error retrieving JSON:", err);
});
Contributions are welcome! If you find a bug or have suggestions for improvements, please open an issue or submit a pull request on GitHub.
This project is licensed under the MIT License. See the LICENSE file for details.
Priyanshu Soni