Protocol Kit
Software development kit that facilitates the interaction with Safe Smart Accounts using a TypeScript interface. This Kit can be used to create new Safe accounts, update the configuration of existing Safes, create and execute transactions, among other features.
Table of contents
Documentation
Head to the Protocol Kit docs to learn more about how to use this SDK.
Installation
Install the package with yarn or npm:
yarn add @safe-global/protocol-kit
npm install @safe-global/protocol-kit
Quick Start
provider
: You can set an EIP-1193 compatible provider or an HTTP/WebSocket RPC URL.signer
: This is an optional parameter. It should be the provider's address you want to use or a private key. If not set, it will try to fetch a connected account from the provider.
Loading an already deployed Safe, using the safeAddress
property:
import Safe from '@safe-global/protocol-kit'
const protocolKit = await Safe.init({
provider,
signer,
safeAddress
})
Initialization of an undeployed Safe using the predictedSafe
property. Because Safes are deployed in a deterministic way, passing a predictedSafe
will allow to initialize the SDK with the Safe configuration and use it to some extent before it's deployed:
import Safe, { PredictedSafeProps } from '@safe-global/protocol-kit'
const predictedSafe: PredictedSafeProps = {
safeAccountConfig,
safeDeploymentConfig
}
const protocolKit = await Safe.init({
provider,
signer,
predictedSafe
})
Need Help or Have Questions?
If you have any doubts, questions, or need assistance, feel free to reach out! Here you will find how to get support.
Contributing
Please read our contribution guidelines before submitting any changes. We appreciate your help! 🙌
License
This library is released under MIT.