Skip to content
This repository has been archived by the owner on Nov 3, 2021. It is now read-only.
/ gsn-multisig Public archive

An Ethereum smart contract implementing a multisig with support for the Gas Station Network (GSN) https://gsn.openzeppelin.com

Notifications You must be signed in to change notification settings

natewave/gsn-multisig

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GSN-enabled Multisig

A fork of gnosis multisigs to support the Gas Station Network (GSN)

How to run

On ganache / local env

# run ganache in a separate terminal
$ ganache-cli
# compile contracts and write down the deployed address
$ openzepplin create
# deploy a local GSN (RelayHub + relayers)
# this step is not necessary if testing on rinkby or mainnet, GSN already exists there
$ npx oz-gsn run-relayer
# fund recipient
$ npx oz-gsn fund-recipient --recipient $address

At this point, the whole GSN and GSN-enabled smart contracts are operational on the local ganache instance

Webapp

The web app is using clojurescript's reagent along with shadow-cljs build tool

$ npm install
$ shadow-cljs server
$ shadow-cljs watch app

visit localhost:3000

GSN details

For the purpose of the sample webapp, the GSN-enabled web3 provider is provided using portis.io

Deployed contracts

Contracts have been deployed to ropsten at the following addresses:

Deploy your own

Change settings in networks.js and add .env with infura key and 12-word mnemonic phrase:

INFURA_PROJECT_ID="ENTER INFURA PROJECT ID"
DEV_MNEMONIC="ENTER 12 WORD SEED PHRASE"

...then run

$ openzeppelin create

About

An Ethereum smart contract implementing a multisig with support for the Gas Station Network (GSN) https://gsn.openzeppelin.com

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published