Fork of OpenBurner - Enhanced version specifically designed for dgen1 devices with advanced Smart Wallet management and multi-wallet support.
An open source Web3 wallet for Burner Ethereum hardware wallets. Built with Next.js, TypeScript, and ethers.js.
Burner is an affordable, credit-card-sized hardware wallet built for gifting and everyday crypto use. It uses the same secure chip technology found in traditional hardware wallets like Ledger or Trezor, but reimagines the hardware wallet experience with a seedless design, web-based interface, and NFC connectivity. Burner combines the security of cold storage with the convenience of a software wallet, offering an accessible self-custody solution for spending, saving, and gifting crypto securely.
OpenBurner is a wallet application for Burner Ethereum hardware wallets. It runs locally on your machine. Private keys remain in the card's secure element.
This Edition is a fork of the original OpenBurner, enhanced with advanced features for Coinbase Smart Wallet integration and improved wallet management, specifically optimized for dgen1 devices.
- π Hardware-Secured Keys - Private keys never leave the secure element chip
- π Multi-Chain Support - Extends Burner use across Ethereum, Base, Arbitrum, Optimism, BNB Chain, Avalanche, Blast, Linea, Mantle, Mode, Polygon, Scroll, Unichain, and any custom EVM chain
- π° Token Management - View balances for ETH and ERC-20 tokens
- πΈ Send Transactions - Native and ERC-20 transfers with hardware signing
- π Real-Time Prices - CoinGecko integration with intelligent caching
- π Custom RPCs - Connect to any EVM-compatible chain
- π¨ NFT Management - View, manage, and transfer NFTs with full support for ENS domains
- Auto-Discovery - Automatically detects Coinbase Smart Wallets associated with your Burner card via recovery API
- Multi-Wallet Support - Seamlessly switch between your Burner card and multiple Smart Wallets
- Smart Wallet Owner Management - Add and remove owners from your Smart Wallets with a user-friendly interface
- Dynamic Balance Display - View balances for the currently selected wallet (Burner or Smart Wallet)
- Transaction Routing - Smart Wallet transactions use the Burner card as the signing owner
- Wallet Selector - Easy switching between Burner card and Smart Wallets from the main UI
- Owner Information Display - View all Smart Wallet owners with full addresses and copy functionality
- Owner Index Management - Proper handling of owner indices for removal operations
- Backward Compatibility - Maintains compatibility with single Smart Wallet configurations
- Loading States - Visual feedback during transaction processing for all operations
- Success Confirmation Dialogs - Clear confirmation messages after successful transactions (tokens, NFTs, owner management)
- Transaction Hash Display - View and copy transaction hashes after completion
- Explorer Links - Direct links to block explorers for all transaction types
- Full English Interface - Complete translation from Italian to English
- PIN Dialog Layering - PIN input dialog always appears on top of other modals
- Wallet-Aware Components - Token list, send dialog, and NFT manager automatically update based on selected wallet
- Address Display - Full address display with clipboard copy buttons throughout the interface
- API Integration - Smart Wallet discovery via Markushaas recovery API with on-chain fallback
- Factory Contract Support - Support for both v1 and v1.1 Coinbase Smart Wallet factory contracts
- Type Safety - Full TypeScript compliance for production builds
- Error Handling - Enhanced error messages with chain context and user-friendly descriptions
- Multicall3 Integration - Batch RPC calls for efficient balance queries
- Advanced Caching - Multi-tier price caching with stale-while-revalidate
- Burner Card Integration - NFC-based hardware wallet support
- Modern Stack - Next.js 14, TypeScript, Tailwind CSS, ethers.js v6
- State Persistence - localStorage-backed state management with Zustand
- Smart Wallet Contracts - Direct integration with Coinbase Smart Wallet contracts (v1 and v1.1)
- Burner Card (dgen1 compatible)
- Desktop NFC Reader - ACR1252U or compatible USB NFC reader (Get on Amazon)
- HaLo Bridge - Local WebSocket bridge software (HaLo Tools)
- Node.js 18+ - Download
# Clone the repository
git clone https://github.com/pointbreak01/OpenburnerDgen1Edition.git
cd OpenburnerDgen1Edition
# Install dependencies
npm install
# Create environment file
cp env.example .env.local
# Start development server
npm run devOpen http://localhost:3000 in your browser.
Install and run the HaLo Bridge to connect your NFC reader. The bridge runs on ws://127.0.0.1:32868/ws by default.
See DOCS.md for complete setup instructions.
β Read the full documentation
Complete guide covering:
- Installation & setup
- Architecture
- HaLo Bridge configuration
- API reference
- Security model
- Smart Wallet setup and management
- Troubleshooting
βββββββββββββββββββββββββββββββββββββββββββ
β Web Application (Next.js) β
β β’ Wallet UI β
β β’ Transaction Building β
β β’ Token Management β
β β’ Smart Wallet Management β
β β’ Owner Management β
β β’ Price Oracle Integration β
βββββββββββββββ¬ββββββββββββββββββββββββββββ
β
β WebSocket (127.0.0.1:32868)
β
βββββββββββββββββββββββββββββββββββββββββββ
β HaLo Bridge (Local) β
β β’ NFC Communication β
β β’ Command Routing β
β β’ PC/SC Interface β
βββββββββββββββ¬ββββββββββββββββββββββββββββ
β
β NFC (13.56 MHz)
β
βββββββββββββββββββββββββββββββββββββββββββ
β Burner NFC Chip (Secure Element) β
β β’ Private Key Storage β
β β’ Transaction Signing β
β β’ ECDSA Operations β
βββββββββββββββββββββββββββββββββββββββββββ
βββββββββββββββββββββββββββββββββββββββββββ
β Coinbase Smart Wallet (On-Chain) β
β β’ Account Abstraction β
β β’ Owner Management β
β β’ Transaction Execution β
βββββββββββββββββββββββββββββββββββββββββββ
Your private keys never leave the Burner card's secure element (EAL6+ certified). All signing happens on-chip. The app only handles public keys and coordinates transactions via the local bridge.
Smart Wallet transactions are executed on-chain, with the Burner card serving as the signing owner. Gas fees are paid by the Burner card owner address.
Everything BurnerOS supports:
- Ethereum, Base, Arbitrum, Optimism
Plus additional chains:
- BNB Chain
- Avalanche
- Blast
- Linea
- Mantle
- Mode
- Polygon
- Scroll
- Unichain
Plus any custom EVM-compatible chain via Custom RPC configuration
The application automatically detects Smart Wallets associated with your Burner card by:
- Querying the Markushaas recovery API for registered Smart Wallets
- Falling back to on-chain factory contract lookup if API is unavailable
- Add Owners: Add new owners to your Smart Wallet (e.g., for multi-sig setups)
- Remove Owners: Remove owners by index (requires both index and owner bytes for security)
- View Owners: Display all current owners with full addresses and indices
- Copy Functionality: One-click copy for owner addresses
- Easily switch between your Burner card and multiple Smart Wallets
- Balance and transaction context automatically updates based on selected wallet
- Visual indicators show which wallet is currently active
This project is licensed under the MIT License. You can:
- Use it for personal or commercial purposes
- Modify and customize the code
- Fork and build your own version
- Distribute your modified versions
See the LICENSE file for full terms.
This is a fork of the original OpenBurner project, created specifically for dgen1 devices with the following enhancements:
- Smart Wallet Integration: Full support for Coinbase Smart Wallets
- Multi-Wallet Management: Seamless switching between Burner and Smart Wallets
- Enhanced UX: Improved transaction flows with loading states and confirmations
- English Interface: Complete translation for international users
- Production Ready: TypeScript strict mode compliance for Next.js production builds
Original OpenBurner created by @rdyplayerB.
app/- Next.js pages and routingcomponents/- React components for UIshared/- Shared wallet componentslocal/- Local wallet connection componentshosted/- Hosted mode componentscommon/- Common UI components (modals, toggles)
lib/- Core librariesburner-*.ts- Burner card integrationcoinbase-smart-wallet.ts- Smart Wallet contract interactionsmulticall.ts- Batch RPC callsprice-oracle.ts- CoinGecko price fetchingtoken-lists.ts- Token definitionsnft-manager.ts- NFT handling
store/- Zustand state managementwallet-store.ts- Global wallet state with multi-wallet supporttheme-store.ts- Theme management
hooks/- React hooks for environment detection, PWA, mobile support
- GitHub Repository: https://github.com/pointbreak01/OpenburnerDgen1Edition
- Original OpenBurner: https://github.com/rdyplayerB/openburner
- Get a Burner Card: Order here
- LibBurner Documentation: https://github.com/arx-research/libburner
- ethers.js Docs: https://docs.ethers.org
- Ensure your Burner card is connected and unlocked
- Check that the recovery API is accessible
- Verify the Smart Wallet exists on the selected chain
- Ensure the Burner card has sufficient ETH for gas fees
- Verify the selected chain matches the Smart Wallet deployment
- Check that you have the required permissions (e.g., owner status)
- Check browser console for errors
- Ensure no browser extensions are blocking modal overlays
- Try refreshing the page
Built with β€οΈ for the dgen1 community β’ Based on OpenBurner by @rdyplayerB β’ MIT License