:warning: This project is deprecated. All development on the GSN has been moved to the OpenGSN organization. Please refer to the OpenGSN provider implementation (GSNv1 version here). We won't be developing new features nor addressing issues. Read here for more info.
OpenZeppelin GSN Provider
GSN Provider
A web3.js compatible provider for sending transactions via the Gas Station Network (GSN). This package wraps a modified version of the RelayClient
from tabookey-gasless
with a custom web3 Provider.
Overview
Installation
$ npm install @openzeppelin/gsn-provider
Usage
Create a GSNProvider
and use it as the provider for your web3 instance:
const Web3 = require("web3");
const { GSNProvider } = require("@openzeppelin/gsn-provider");
const web3 = new Web3(new GSNProvider("http://localhost:8545"));
Transactions sent to contracts will then be automatically routed through the GSN:
const myContract = new web3.eth.Contract(abi, address);
await myContract.methods.myFunction().send({ from });
await myContract.methods.myFunction().send({ from, useGSN: false });
Learn More
License
Released under the MIT License.