Skip to content

ZeroDev Introduction

ZeroDev is an SDK for developing account abstraction (AA) wallets and DApps using Kernel, a smart contract account (or "smart account" for short) that is:

  • Modular: Kernel accounts can be customized with Solidity plugins. Features such as multisig, recovery, and session keys are all implemented as plugins.
  • Optimized: Kernel is heavily optimized -- it saves gas for you and your users.
  • Widely used: Kernel is the most widely deployed ERC-4337 smart account.

Why Account Abstraction

Simply put, account abstraction is how you build a Web3 experience that feels like Web2, without compromising on security for your users. With AA, you can:

  • Create self-custody wallets for your users that support Web2 logins (socials, email, passkeys, etc.), so they don’t need to worry about seed phrases.

  • Sponsor gas for your users so they don’t need to worry about gas, or let them pay gas in ERC20 tokens like USDC or even your own project tokens.

  • Simplify user flow by batching transactions, removing signing prompts, and even automating transactions for users while they are offline (think subscriptions).

  • Recover wallets for users if they lose their keys.

And these are just some examples! ZeroDev is fully programmable and can support additional features via plugins.

Why ZeroDev

  • Powerful: ZeroDev supports all major AA features such as sponsoring gas and batching transactions, as well as powerful plugins such as session keys, recovery, passkeys, and more.

  • Modular: ZeroDev is the first AA SDK that natively supports plugins. You can customize your wallet logic by developing custom plugins.

  • Interoperable: ZeroDev is built on top of Viem and Permissionless, which means:

    • You can interact with smart accounts through standard Viem APIs.
    • You can use ZeroDev with any AA infra providers, avoiding vendor lock-in.

SDK Components

There are four major components of the ZeroDev SDK.

  • Core API: the main things you want to do with a smart account, such as sponsoring gas, batching UserOps, etc.

  • Plugins: Kernel plugins that change the validation logic of the account, including passkeys, session keys, recovery, etc.

  • Signers: integrations with popular WaaS services such as Privy and Dynamic, allowing you to use these services with account abstraction.

  • Presets: helper functions for integrating with popular infra providers such as Pimlico, StackUp, Alchemy, and of course ZeroDev itself.

Getting Started

To start coding with ZeroDev, check out the quickstart or the tutorial.