Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ja88a/zksync-aa-custom

Custom Account Abstraction on zkSync Era
https://github.com/ja88a/zksync-aa-custom

account-abstraction solidity zksync-v2

Last synced: 18 days ago
JSON representation

Custom Account Abstraction on zkSync Era

Awesome Lists containing this project

README

        

# Custom AA on zkSync

## Purpose

Experiment the support for Account abstraction on zkSync (v2, Era).

Initial:

1. Create a factory contract for deploying AAccounts
2. Create a MultiSig 2:2 owned by the 2 AAccount owners
3. Use the AAMultiSig contract to deploy another Account
4. Apply the UUPS proxy pattern to the MultiSig contract

## Features

## Installation and compilation

You need Node.js and Yarn.

Install all dependencies with `pnpm install` or `yarn`.

Compile all contracts with `yarn hardhat compile`

## Deployment and usage

To run the scripts to deploy and execute the contracts, use the `zksync-deploy` command:

- `yarn hardhat deploy-zksync --script deploy-factory.ts`: deploys the factory contract
- `yarn hardhat deploy-zksync --script deploy-multisig.ts`: deploys a multisig wallet and executes a transaction.

# Account Abstraction - zkSync Tutorial

## Initial Fork

Refer to [matter-labs / custom-aa-tutorial](https://github.com/matter-labs/custom-aa-tutorial)

Code for the "Account abstraction" tutorial from the [zkSync v2 documentation](https://v2-docs.zksync.io/dev/).

You can find a full step-by-step guide to build this project [in this article](https://v2-docs.zksync.io/dev/tutorials/custom-aa-tutorial.html#prerequisite).

## Support

Check out the [common errors section in the tutorial](https://v2-docs.zksync.io/dev/tutorials/custom-paymaster-tutorial.html#prerequisite), open an issue, or [contact us on Discord](https://discord.com/invite/px2aR7w).