Skip to content

A performant, reliable, and type-safe ERC-4337 Bundler written in Typescript

License

Notifications You must be signed in to change notification settings

pimlicolabs/alto

Repository files navigation

⛰️ Alto ⛰️

Node Version

Alto is a Typescript implementation of the ERC-4337 bundler specification developed by Pimlico, focused on transaction inclusion reliability.

Getting started

For a full explanation of Alto, please visit our docs page

Run an instance of Alto with the following commands:

pnpm install
pnpm build
./alto --entryPoint "0x5ff1...2789" --signerPrivateKeys "..." --utilityPrivateKey "..." --minBalance "0" --rpcUrl "http://localhost:8545" --networkName "local"

To find a list of all options, run:

./alto help

A helper script for running Alto locally with an Anvil node can be found at scripts/run-local-instance.sh

Run the test suite with the following commands:

pnpm build
pnpm test # note: foundry must be installed on the machine for this to work

Prerequisites

How to test bundler specs

  • Run Geth node or any other node that support debug_traceCall
  • Clone bundler-spec-tests repo.
  • build & run bundler with --environment development --bundleMode manual --safeMode true

License

Distributed under the GPL-3.0 License. See LICENSE for more information.

Contact

Feel free to ask any questions in our Telegram group

Acknowledgements