Skip to content

JS Client for Bundlr Nodes with arweave wallet support

Notifications You must be signed in to change notification settings

getFairAI/js-sdk

 
 

Repository files navigation

Irys SDK

The Irys SDK is a typesafe SDK for interacting with Irys.

What is Irys?

Irys is the only provenance layer. It enables users to scale permanent data and precisely attribute its origin. Data uploaded to Irys is permanent, precise, and unconstrained. Learn more in our docs.

How Irys works

When you upload data to Irys, you are immediately issued a receipt. This receipt contains an ID that can be used to instantly download your data, along with attribution, authorship details, and timestamp accurate to the millisecond. The receipt acts as cryptographic proof of time and can be trustlessly verified as a safeguard against potentially malicious behavior.

Next, Irys includes your transaction in a bundle and submits it to Arweave where it is permanently stored. Irys guarantees your transaction will be finalized on Arweave (>= 50 block confirmations) and seeded to >=5 miners.

For more details, including a video overview, see our docs.

Why Irys offers

Getting started

Install the SDK

Using npm:

npm install @irys/sdk

or yarn:

yarn add @irys/sdk

Connect to an Irys node

Connect to one of our three nodes:

const getIrys = async () => {
	const url = "https://devnet.irys.xyz";
	const providerUrl = "https://rpc-mumbai.maticvigil.com";
	const token = "matic";
 
	const irys = new Irys({
		url, // URL of the node you want to connect to
		token, // Token used for payment
		key: process.env.PRIVATE_KEY, // Private key
		config: { providerUrl }, // Optional provider URL, only required when using Devnet
	});
	return irys;
};

Upload

const uploadData = async () => {
	const irys = await getIrys();
	const dataToUpload = "GM world.";
	try {
		const receipt = await irys.upload(dataToUpload);
		console.log(`Data uploaded ==> https://gateway.irys.xyz/${receipt.id}`);
	} catch (e) {
		console.log("Error uploading data ", e);
	}
};

For more code examples, including code showing how to upload files and folders, see our docs.

Irys in the browser

When using Irys in the browser, the end user's injected provider is used to sign transactions and pay for uploads. See our docs for code examples.

UI toolkit

To help kickstart your next project, we've released the Provenance Toolkit, a full suite of open source UI components.

Video

We also have a video teaching how to build with Irys.

Support

If you have any questions or just want to brainstorm about how to integrate Irys into your project, reach out to us in Discord.

About

JS Client for Bundlr Nodes with arweave wallet support

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 93.8%
  • JavaScript 6.1%
  • Other 0.1%