feat: add Base Account SDK connector#2340
Conversation
Add @base-org/account as an EVM connector for Web3Auth, enabling developers to use Base Account SDK as a wallet option in modal and no-modal flows. Changes: - New BaseAccountConnector extending BaseEvmConnector with full lifecycle - Add BASE_ACCOUNT to WALLET_CONNECTORS and CONNECTOR_NAMES - Skip AA wrapping for Base Account (already a smart account provider) - Add @base-org/account as optional peer dependency - Add Base logo asset and constant for modal UI Co-Authored-By: Claude <noreply@anthropic.com>
|
@youssefea is attempting to deploy a commit to the Consensys Team on Vercel. A member of the Team first needs to authorize it. |
| "require": "./dist/lib.cjs/vue/wagmi/index.js", | ||
| "types": "./dist/lib.cjs/types/vue/wagmi/index.d.ts" | ||
| }, | ||
| "./connectors/base-account-connector": { |
There was a problem hiding this comment.
to follow our conventions, pls re-export from modal package as well
You also need to add this as a path in rollup config to become an export
| <svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg"> | ||
| <circle cx="20" cy="20" r="20" fill="#0052FF"/> | ||
| <path d="M19.9756 34.1667C27.8002 34.1667 34.1424 27.8246 34.1424 20C34.1424 12.1755 27.8002 5.83337 19.9756 5.83337C12.5597 5.83337 6.47236 11.5399 5.87109 18.7917H25.3588V21.2084H5.87109C6.47236 28.4602 12.5597 34.1667 19.9756 34.1667Z" fill="white"/> | ||
| </svg> |
There was a problem hiding this comment.
Unused SVG asset file not referenced anywhere
Low Severity
The base-logo.svg file is added to the assets directory but is not imported or referenced anywhere in the codebase. The BASE_ACCOUNT_LOGO constant uses a URL (https://images.web3auth.io/login-base-account.svg) rather than this local asset file.
|
|
||
| export default defineConfig([globalIgnores(["**/*.config.js"]), { | ||
| extends: [...nextCoreWebVitals], | ||
| }]); No newline at end of file |
There was a problem hiding this comment.
Flat eslint config spreads non-iterable
Medium Severity
eslint.config.mjs uses extends: [...nextCoreWebVitals], but eslint-config-next/core-web-vitals is not guaranteed to be an array/iterable in flat config form. If it’s an object/string config, spreading throws at load time and breaks eslint execution for the demo.
|
@chaitanyapotti @yashovardhan The Base logo is missing from the CDN Can you please upload it to the proper link by choosing the appropriate logo: https://www.base.org/base-brand.zip Probably a simple square makes the most sense here (see Privy as an example) |


Add @base-org/account as an EVM connector for Web3Auth, enabling developers to
use Base Account SDK as a wallet option in modal and no-modal flows.
Changes:
Motivation and Context
Enable Web3Auth users to connect via Base Account SDK, which provides a smart
account wallet experience on Base chain. This gives developers another wallet
option alongside existing connectors like Coinbase and MetaMask.
Jira Link: N/A
Description
BaseAccountConnectorclass inpackages/no-modal/src/connectors/base-account-connector/following the samepattern as
CoinbaseConnector@base-org/accountSDK and exposes itsEIP-1193 provider
appName,appLogoUrlfrom site metadata andappChainIdsfrom configured EIP-155 chains
noModal.tsto skip AA wrapping for Base Account since it'salready a smart account provider
@base-org/account ^2.5.1as optional peer dependencyBASE_ACCOUNT_LOGOconstant for modal UI@web3auth/modalpackageHow has this been tested?
errors in other files unrelated to this PR)
MetaMaskConnector)
Screenshots (if appropriate):
N/A
Types of changes
to not work as expected)
Checklist:
Note
Low Risk
Demo-only updates to align with upstream Next.js and Wagmi hook API changes; low blast radius beyond sample apps.
Overview
Updates the
nextjs-ssr-appdemo to match newer Next.js/Wagmi APIs.RootLayoutis nowasyncand awaitsheaders()when derivingweb3authInitialStatefrom cookies, and the demo’s Wagmi usage is migrated to the newer hook return shapes (useConnection,useChains,mutate/mutateAsyncforuseSwitchChain,useSignMessage,useSignTypedData). Adds an ESLint flat config (eslint.config.mjs) and updatesnext-env.d.tsto include generated route types.Written by Cursor Bugbot for commit 703b279. This will update automatically on new commits. Configure here.