
abstractjs 🚀

The Biconomy SDK is your all-in-one toolkit for building decentralized applications (dApps) with ERC4337 Account Abstraction and Smart Accounts. It is designed for seamless user experiences and offers non-custodial solutions for user onboarding, sending transactions (userOps), gas sponsorship and much more.
📚 Table of Contents
🛠️ Quickstart
Installation
bun add @biconomy/abstractjs viem @rhinestone/module-sdk
import {
toMultichainNexusAccount,
mcUSDC,
createMeeClient,
getMEEVersion,
MEEVersion
} from "@biconomy/abstractjs";
import { base, optimism } from "viem/chains";
import { privateKeyToAccount } from "viem/accounts";
import { http } from "viem";
const eoaAccount = privateKeyToAccount(`0x${process.env.PRIVATE_KEY}`)
const mcNexus = await toMultichainNexusAccount({
signer: eoaAccount,
chainConfigurations: [
{
chain: base,
transport: http(),
version: getMEEVersion(MEEVersion.V2_1_0)
},
{
chain: optimism,
transport: http(),
version: getMEEVersion(MEEVersion.V2_1_0)
}
]
})
const meeClient = await createMeeClient({ account: mcNexus })
const quote = await meeClient.getQuote({
instructions: [{
calls: [{ to: "0x...", value: 1n, gasLimit: 100000n }],
chainId: base.id
}],
feeToken: {
address: mcUSDC.addressOn(base.id),
chainId: base.id
}
})
const { hash } = await meeClient.executeQuote({ quote })
Testing
Prerequisites:
- Node.js (v22 or higher)
- Bun package manager
- Foundry
- Yarn (must be 1.1.x, not 3.x). This is necessary because the nexus contracts repo relies on yarn.
Setup:
bun install --frozen-lockfile
Funding test accounts:
bun run fund:nexus
Running Tests:
bun run test
bun run test:watch -t=mee
For detailed information about the testing framework, network configurations, and debugging guidelines, please refer to our Testing Documentation.
📄 Documentation and Resources
For a comprehensive understanding of our project and to contribute effectively, please refer to the following resources:
License
This project is licensed under the MIT License. See the LICENSE file for details
Connect with Biconomy 🍊
