Skip to content

bcnmy/abstractjs

Repository files navigation

Biconomy License MIT codecovinstall size

abstractjs 🚀

Open in GitHub Codespaces

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

  1. Add the package:
bun add @biconomy/abstractjs viem @rhinestone/module-sdk
  1. Basic Usage:
import { toMultichainNexusAccount, mcUSDC } from "@biconomy/abstractjs";
import { base, optimism } from "viem/chains";
import { privateKeyToAccount } from "viem/accounts";

const eoaAccount = privateKeyToAccount(`0x${process.env.PRIVATE_KEY}`)
const mcNexus = await toMultichainNexusAccount({
  chains: [base, optimism],
  signer: eoaAccount
})
const meeClient = await createMeeClient({ account: mcNexus })

const quote = await meeClient.getQuote({
  instructions: [{
    calls: [{ to: "0x...", value: 1n, gasLimit: 100000n }],
    chainId: base.id
  }],
  feeToken: toFeeToken({
    mcToken: mcUSDC,
    chainId: base.id
  })
})

// Execute the quote and get back a transaction hash
// This sends the transaction to the network
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:

# Fund test PRIVATE_KEY account with native tokens and USDC
bun run fund:nexus

Running Tests:

# Run all tests
bun run test

# Run tests for a specific subset of tests (by test description)
bun run test -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 🍊

Website Telegram Twitter LinkedIn Discord YouTube GitHub

About

No description, website, or topics provided.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •