Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hyodar/multisig-wallet
https://github.com/hyodar/multisig-wallet
Last synced: 21 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/hyodar/multisig-wallet
- Owner: Hyodar
- Created: 2022-07-19T19:15:52.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2022-07-25T23:30:53.000Z (over 2 years ago)
- Last Synced: 2024-11-05T22:43:54.697Z (2 months ago)
- Language: Solidity
- Size: 77.1 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Multisig Wallet
This repository contains a simple implementation of a multisig wallet with on-chain approvals.
The contract acts as a shared wallet for multiple members. Any member can submit a transaction proposal that, when executed, will make a call or a delegated call with the information that was set in the proposal. A transaction can only be executed by a member (not necessarily the one that created the proposal) when it has been approved by at least a defined number of members. Approvals can also be revoked as long as the proposal hasn't been executed yet.
Besides external calls, there is also a number of wallet administrative operations that can only be executed through these proposals, such as adding or removing or replacing members, changing the approval threshold or setting a fallback contract that can extend the wallet's functionalities (e.g. implementing a specific callback).
An instance of this contract was deployed in the Goerli testnet at [`0xd02e968d8122d690b06aa9ad12db51d62f39f34a`](https://goerli.etherscan.io/address/0xd02e968d8122d690b06aa9ad12db51d62f39f34a). The deployment script is available at `script/MultisigWallet.s.sol`.
## Usage
To be able to build the project, run tests and other utilities, install [foundry](https://github.com/foundry-rs/foundry).
### Build
Build the contracts:```
forge build
```### Test
Run the unit tests:```
forge test
```