Skip to content

Particle-Network/particle-bundler-server

Repository files navigation

Particle Bundler RPC Server

GitHub

Particle Bundler RPC completes compatible with ERC4337 standards. It is extremely stable and supports high concurrency requests.

⚡️ Live

👉 We have deployed a server on production: https://docs.particle.network/developers/node-service/evm-chains-api/bundler-rpc

👉 Try the demo: https://scroll-testnet.particle.network/

🔬 Functionalities

  • All standard RPCs supported
  • All can be configured: RPCs, Signers, etc
  • Support any chain
  • UserOp Persistence
  • UserOp Concurrent Handling
  • Built-in gas price oracle
  • Multi Bundler Signers Manager
  • Auto Retry for failed transaction
  • Correct Transaction even when affected by MEV
  • Deploy new chains with one line code

📖 Related articles

ERC-4337: Predicting the Gas Consumption of UserOperation

🔧 Quick Start

💿 Clone the project

git https://github.com/Particle-Network/particle-bundler-server.git
cd particle-bundler-server
yarn

🧷 Setup the environment

Set your configuration in .env.dev. We require the mongodb.

🏄🏻‍♂️ Start the project

npm run start

🖖 Start a gasless transaction

create a new terminal and run the test

npm run test

🧷 Custom the bundler config

Set your configuration in /src/configs/bundler-config.ts.

  • CHAIN_SIGNER_MIN_BALANCE: the minimum balance of the signer, if the signer's balance is less than this value, the payment signer will automatically transfer the token to the signer.
  • CHAIN_VERIFYING_PAYMASTER_MIN_DEPOSIT: the minimum deposit of the paymaster, if the paymaster's deposit is less than this value, the payment signer will automatically transfer the token to the paymaster.

📝 Scripts

deploy AA & Simple Account for a new chain

// set a signer in scripts/deploy-aa.ts

npx ts-node scripts/deploy-aa.ts 11155111

🛀🏽 API doc

Learn more on https://docs.particle.network/developers/node-service/evm-chains-api/bundler-rpc

💼 Feedback

If you got some problems, please report bugs or issues.

You can also join our Discord.

Releases

No releases published

Packages

No packages published

Languages