Wallet Overview
Extra Wallet is a next-generation browser wallet designed for security, flexibility, and extensibility. It moves beyond the traditional "single account" model to offer a powerful portfolio management system.
Architecture & Hierarchy
The wallet is organized into a three-level hierarchy to help you manage diverse assets across multiple networks:
- Portfolio: The top-level container. You can have multiple portfolios (e.g., "Personal", "Business", "Cold Storage"), each encrypted with its own password.
- Wallet: A logical grouping within a portfolio. A wallet can generate addresses for multiple blockchains from a single mnemonic phrase.
- Account: The entity related to the actual address on a specific blockchain network (e.g., Bitcoin, Ethereum, Solana).
Dashboards
Portfolio Dashboard
Gives you a bird's-eye view of your entire portfolio's performance, aggregated across all wallets and networks.

Wallet Dashboard
Drill down into a specific wallet to see asset breakdowns and transaction history for that specific mnemonic phrase.

App Store & Extensions
Extra Wallet is built on a modular extension architecture. Instead of bloating the core wallet with every possible feature, we offer an App Store where you can enable only what you need.
- Lazy Loading: Extension code is loaded only when you enable it. If an extension is disabled, its code is never fetched or executed in your browser.
- Security: This approach minimizes the attack surface. Potentially unsafe or experimental third-party extensions cannot run code in your wallet unless you explicitly turn them on.
👉 Explore the App Store Extensions docs
Key Features
Offline Mode
The wallet automatically detects when your network connection is lost and switches to a limited offline mode. In this mode, you can still view cached data and perform offline operations (like generating QR codes for air-gapped signing) without interruption.
👉 Explore the Offline Wallet docs
External Wallets
You aren't limited to keys generated inside Extra Wallet. You can connect external wallets (Ledger, MetaMask, Trust Wallet, etc.) to manage them within the same unified interface.
EVM Testnet Support
Extra Wallet comes with native support for EVM testnets, making it easy to switch between Mainnet and Testnet environments for development and testing.
Security
Security is the core of Extra Wallet. We use a split security model where all sensitive operations (key management, signing) happen in an isolated Signer application running in a separate iframe.
- The main wallet UI never sees your private keys.
- All secrets are encrypted and stored only in the Signer's isolated storage.
👉 Read the full Security Model
Developer Info
Simple Start
- Install dependencies: Run
nvm install(if needed) andnvm use, thenyarnin the root directory. - Configure Environment: Fill in
.env:VITE_API_PRICE_DATA:https://api-staging.extrawallet.app(see API docs)VITE_URL_IFRAME:http://localhost:5001or the production URL.PRIVATE_KEY: EVM private key for build signatures.VITE_BUILD_TARGET:offlineoronline.VITE_WALLET_CONNECT_PROJECT_ID: Your WalletConnect ID.
- Start Signer: If using localhost for the iframe, ensure the signer is running on port 5001.
- Run App:
yarn dev.
All sensitive operations (mnemonic access, signing) must be implemented inside the signer iframe. The main app never touches raw private keys.
Build and Test
To build the application for production:
# Build for online mode
yarn build:online
# Build for offline mode
yarn build:offline
What happens during build:
- Module Parsing: Scans
module.config.tsfiles to determine which modules to include. - Core Build:
- Copies files to a temporary build directory.
- Computes checksums and signatures of core files.
- Generates
public/build.manifest.jsonorpublic/offline-build.manifest.json.
- App Build:
- Bundles the application using Vite.
- Outputs to the
distdirectory.
Preview:
Run yarn preview to serve the production build locally.
- Built and maintained by the Extra Wallet team.
- Source: Extra Wallet