Giter Site home page Giter Site logo

aa-playground's Introduction

๐Ÿ› ๏ธ Account Abstraction Playground

Runs off-chain services on a local anvil chain to help test 4337 functionality.

๐Ÿ–ฅ๏ธ Running locally

Running the devnet

1. copy docker-compose.devnet.yaml and .env.devnet to your repo

2. Run services

docker compose -f docker-compose.devnet.yaml --env-file ./.env.devnet up

This will:

  1. โ›“๏ธ Start anvil instance at http://0.0.0.0:8545, chainId = 31337
  2. ๐Ÿ›  Deploy required contracts
  3. ๐Ÿ“ก Launch the following bundler services against anvil node
  4. ๐ŸŒ Set up a nginx reverse proxy at http://0.0.0.0:3010 with the following services:

๐Ÿ“ก Services

Service Direct URL Proxy URL
Anvil RPC (chainId: 31337) http://0.0.0.0:8545 http://0.0.0.0:3010/anvil-rpc
Skandha Bundler RPC - http://0.0.0.0:3010/skandha-bundler-rpc
Transeptor Bundler RPC - http://0.0.0.0:3010/transeptor-bundler-rpc

๐Ÿ“ Basic Contract Deployments

Contract Address
EntryPoint Contract (v0.6.0) 0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789
Deterministic Deployment Proxy 0x4e59b44847b379578588920ca78fbf26c0b4956c
Multicall3 0xcA11bde05977b3631167028862bE2a173976CA11

๐Ÿ’ผ Smart Account Contract Deployments

LightAccount

Made by Alchemy, LightAccount is a lightweight implementation of a smart account. Not as many features, but is easy to understand, lightweight, and gas efficient.

Contract Address
LightAccountFactory 0xAad3de1B3BB85F10658972372058F772A70DFefC

Kernel

Made by zerodev, Kernel is a modular smart account, and one of the most used smart account implementations. It is feature packed, gas efficient, supports modular plugins.

Contract Address
KernelAccountFactory 0xFef4e11B0121eb9998bb36A7Bbe4ea2AC793A872
Kernel Implementation 0x282993C5763F1b929A0c856DAd2F271698d4811b
Kernel ECDSAValidator 0x5A24eDA104aFb5d9181C57f7F46651ceBC5DdC7D

๐Ÿ”จ Developing locally / building from scratch

1. Clone the repo

git clone --recurse-submodules https://github.com/jakim929/aa-playground.git
cd aa-playground

2. Run services

docker compose --env-file ./.env.devnet up

or to use pre-built images on docker-hub

docker compose -f docker-compose.devnet.yaml --env-file ./.env.devnet up

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.