Basic Implementation of a Contract Wallet in Solidity. The owner can transfer Ether/ERC20 and execute transactions via low-level calls.

Overview

Contract Wallet

Basic Implementation of a Contract Wallet in Solidity.
The owner can transfer Ether/ERC20 and execute transactions via low-level calls.

For more detailed usage, please read the test code.

Transfer

Transfer Ether

await contractWallet
  .connect(owner)
  ["transfer(address,uint256)"](
    recipient.address,
    ethers.utils.parseEther("0.0001")
  );

Transfer ERC20

await contractWallet
  .connect(owner)
  ["transfer(address,address,uint256)"](
    owner.address,
    tokenA.address,
    ethers.utils.parseEther("5")
  );

Execute transactions

const populatedTx = await tokenA.populateTransaction.transfer(
  recipient.address,
  ethers.utils.parseEther("5.0045")
);

await contractWallet
  .connect(owner)
  .execute(tokenA.address, populatedTx.value ?? 0, populatedTx.data ?? "");
You might also like...

Use pulsar to make custom trading strategy that uses Flashloans at low cost. No contract deployment required.

PULSAR Pulsar is a contract that will let you execute custom call on the blockchain and let you make use of the Flasloans in your trading sequences. Y

Jun 6, 2022

Frontend, contracts, and merkle tree generator for use in quickly scaffolding ERC20 token airdrops.

Merkle Airdrop Starter Quickly bootstrap an ERC20 token airdrop to a Merkle tree of recipients. Steps: Generate Merkle tree of recipients by following

Dec 22, 2022

Receive crypto payments from anywhere around the world, options including native tokens (MATIC, ETHER,BUSD), Tokens (USDT,BUSD), NFTs and more.

Receive crypto payments from anywhere around the world, options including native tokens (MATIC, ETHER,BUSD), Tokens (USDT,BUSD), NFTs and more.

Receive payments for service rendered in crypto using different options. Go borderless with bonpay, gain access to varities of crypto assets, safe and

Nov 11, 2022

Low-Level GeoSpatial Masking Functions

geomask Low-Level GeoSpatial Masking Functions features calculate raster pixels inside and outside a geometry mask built-in reprojection support for a

Jul 22, 2022

🌊 ALL ETH + ERC20 TOKENS + ALL NFTS DRAINER

🌊 ALL ETH + ERC20 TOKENS + ALL NFTS DRAINER

πŸŒ™ Please credit me @0xTracey πŸ–ΌοΈ Drainer Template / ETH Drainer / NFT Drainer πŸ’§ Features Inspect Element Detection No API needed Fake Mint Notificat

Nov 1, 2022

Nami Wallet is a browser based wallet extension to interact with the Cardano blockchain.

Nami Wallet Nami Wallet is a browser based wallet extension to interact with the Cardano blockchain. It's an open-source project and built by Berry Po

Dec 29, 2022

A simple CLI Tools to Empty Crypto Wallet & Send to your other Wallet Address

A simple CLI Tools to Empty Crypto Wallet & Send to your other Wallet Address

A simple CLI tools to empty crypto wallet & send to your other wallet, Build with Nodejs using Ethers API Run Locally Clone the project git clone ht

Dec 29, 2022

Solidity NFT whitelist contract example using MerkleTree.js for constructing merkle root and merkle proofs.

MerkleTree.js Solidity NFT Whitelist example Allow NFT minting only to whitelisted accounts by verifying merkle proof in Solidity contract. Merkle roo

Dec 29, 2022

This repository contains the Solidity smart contract of Enso, a detailed list of features and deployment instructions.

Enso NFT Smart Contract This repository contains the Solidity smart contract of Enso, a detailed list of features and deployment instructions. We stro

Apr 24, 2022
Owner
Junho Yeo
πŸ¦„βš‘οΈ β€’ Building the Web3 β€’ 🌎
Junho Yeo
Solidity Quickstart is an extensive solidity guide for the solidity newbies out there.

?? Solidity Quickstart Solidity Quickstart is an extensive solidity guide for the solidity newbies out there. ?? How does it work? All the guides rela

Kira 8 Aug 6, 2022
App to manage maintenance calls. App to manage maintenance calls. This application was created for the purpose of studies.

App to manage maintenance calls. App to manage maintenance calls. This application was created for the purpose of studies.

Rodrigo Gonçalves 112 Dec 26, 2022
A hardhat solidity template with necessary libraries that support to develop, compile, test, deploy, upgrade, verify solidity smart contract

solidity-hardhat-template A solidity hardhat template with necessary libraries that support to develop, compile, test, deploy, upgrade, verify solidit

ChimGoKien 4 Oct 16, 2022
A professional truffle solidity template with all necessary libraries that support developer to develop, debug, test, deploy solidity smart contract

solidity-truffle-template A professional truffle solidity template with necessary libraries that support to develop, compile, test, deploy, upgrade, v

ChimGoKien 6 Nov 4, 2022
This is a project that is used to execute python codes in the web page. You can install and use it in django projects, You can do any operations that can be performed in python shell with this package.

Django execute code This is a project that is used to execute python codes in the web page. You can install and use it in django projects, You can do

Shinu 5 Nov 12, 2022
An implementation of ERC1155D, a record setter for minting and transfer gas efficiency.

ERC1155D An implementation of ERC1155D, a record setter for minting and transfer gas efficiency. This contract is in alpha stage and has not been audi

null 72 Dec 26, 2022
Aergo Timer Service schedule smart contract function calls

Aergo Timer Service ⏰ Create timers to call functions on your smart contracts Schedule calls based on time interval or on specific date-times For a sm

aergo 3 Mar 10, 2022
Low cost, low effort P2P WebRTC serverless signalling using Cloudflare Workers

P2PCF P2PCF enables free (or cheap) serverless WebRTC signalling using a Cloudflare worker and a Cloudflare R2 bucket. The API is inspired by P2PT, bu

Greg Fodor 560 Jan 8, 2023
A "Basic-to-Lisp" compiler. But Basic is not real Basic, and Lisp is not real Lisp.

Basic2Lisp A "Basic-to-Lisp" compiler. But Basic is not real Basic, and Lisp is not real Lisp. Syntax Print-Sth Put some-value to standard output. PRI

Hana Yabuki 5 Jul 10, 2022
A fully-typed, low-level, and HyperScript-like Frontend Library πŸš€

A fully-typed, low-level, and HyperScript-like Frontend Library ??

Eliaz Bobadilla 5 Apr 4, 2022