Recommended way to implement GSNv1 or GSNv2?

Hello, I am very confused, following the documentation on GSN I am seeing that to implement GSNRecipientSignature.sol from version 3 of the contracts, there is no longer support for network.js. I don’t really understand if OpenGSN’s GSNv2 and javascript libraries are compatible with GSNRecipientSignature.sol or if it is convenient to start developing better with the openzeppelin 4.0 Beta version of contracts and fully use OpenGSN. Also, the OpenGSN documentation is not as clear as OpenZeppelin. Please, could you recommend me what would be the best way to implement GSN.

:computer: Environment


:1234: Code to reproduce

1 Like

Hi @gabo,

The OpenGSN team has been busy working on GSNv2, and GSNv1 was put in maintenance mode. Thus, we’ve removed our contracts for GSNv1 integration and begun adding support for GSNv2 in OpenZeppelin Contracts 4.0 Beta.

For questions on GSNv2 you can ask in the

You could also use OpenZeppelin Defender to relay metatransactions: