Socket
Socket
Sign inDemoInstall

@alchemy/aa-accounts

Package Overview
Dependencies
17
Maintainers
2
Versions
86
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @alchemy/aa-accounts

A collection of ERC-4337 compliant smart contract account interfaces


Version published
Maintainers
2
Created

Changelog

Source

3.13.0 (2024-05-10)

Bug Fixes

  • light-account: light account v2 signatures should have sig type (#663) (54764a9)

Features

  • add email loading state to the modal (8d0d244)
  • add passkey loading state (b56fe8d)
  • add support for adding a passkey on signup (ab6bad3)
  • ui: start adding use authenticate calls to the modal (c2ef8eb)

Readme

Source

@alchemy/aa-accounts

This package contains various implementations of the BaseSmartContractAccount class defined in aa-core. This repo is community maintained and we welcome contributions!

Getting started

If you are already using the @alchemy/aa-core package, you can simply install this package and start using the accounts. If you are not using @alchemy/aa-core, you can install it and follow the instructions in the Getting started docs to get started.

via yarn

yarn add @alchemy/aa-accounts

via npm

npm i -s @alchemy/aa-accounts

via pnpm

pnpm i @alchemy/aa-accounts

Contributing

If you are looking to add a new account type, please follow the following structure.

  1. Create a new folder in src with the name of your account type in kebab-case (we are following kebab casing for files throughout the project).
  2. Create a new file in the folder you just created called account.ts and add your implementation for BaseSmartContractAccount
  3. If needed, create a sub-folder in your account folder called abis and add your abis as .ts files. eg:
export const MyContractAbi = [] as const; // the as const is important so we can get correct typing from viem
  1. If you need to extend the SmartAccountProvider class, add a file called provider.ts and add your implementation for SmartAccountProvider.
  • Ideally, your Account impl should just work with the base provider provided by aa-core.
  • If not, consider generalizing the use case and updating SmartAccountProvider
  1. Add some tests for your account and provider (if created) by creating a subfolder in your account/my-account called __tests__ and make sure your files end with the .test.ts suffix
  2. export the classes and types you have defined in src/index.ts
  3. Open a PR and we will review it as soon as possible!

FAQs

Last updated on 10 May 2024

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc