Skip to content

An open source Web3 wallet for Burner Ethereum hardware wallets. Use your Burner across any EVM-compatible chain.

License

Notifications You must be signed in to change notification settings

rdyplayerB/openburner

Repository files navigation

πŸ”₯ OpenBurner

An open source Web3 wallet for Burner Ethereum hardware wallets. Built with Next.js, TypeScript, and ethers.js.

TypeScript Next.js License: MIT

What is Burner?

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.

What is OpenBurner?

OpenBurner is a wallet application for Burner Ethereum hardware wallets. It supports both local and hosted deployment modes. Private keys remain in the card's secure element.

✨ Features

Core Functionality

  • πŸ” 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
  • πŸ”„ Token Swaps - Decentralized swaps using 0x Standard Swap API (local: requires API key, hosted: limited)
  • πŸ“Š Real-Time Prices - CoinGecko integration (local version only)
  • πŸš€ Custom RPCs - Connect to any EVM-compatible chain

Technical Highlights

  • Multicall3 Integration - Batch RPC calls for efficient balance queries
  • Advanced Caching - Multi-tier price caching (local version only)
  • 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

Local vs Hosted

Local Version (Full Features)

  • Real-time pricing with your CoinGecko API key
  • Token swaps with your 0x Standard Swap API key
  • Complete wallet functionality
  • Development and debugging features

Hosted Version (Pricing Disabled)

  • Limited token swaps (basic functionality)
  • Core wallet features (send, receive, manage)
  • Shows "-" instead of USD prices (with helpful tooltip)
  • No API costs or setup required
  • Deploy with limited functionality (API keys required for full features)

Note: Real-time prices and token swaps require running locally with your own CoinGecko and 0x API keys. Hosted version has limited functionality to avoid API costs. OpenBurner uses 0x's standard swap API (not gasless) - users must pay their own gas fees.

πŸš€ Quick Start

Prerequisites

  1. Burner Card - Order here
  2. Desktop NFC Reader - ACR1252U (recommended) or ACR122U (budget option) USB NFC reader
  3. HaLo Bridge - Local WebSocket bridge software (HaLo Tools)
  4. Node.js 18+ - Download

Installation

# Clone the repository
git clone https://github.com/rdyplayerB/openburner.git
cd openburner

# Install dependencies
npm install

# Create environment file
cp env.example .env.local

# Start development server
npm run dev

Open http://localhost:3000 in your browser.

HaLo Bridge Setup

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.

πŸ“– Documentation

β†’ Read the full documentation

Complete guide covering:

  • Installation & setup
  • Architecture
  • HaLo Bridge configuration
  • API reference
  • Security model
  • Troubleshooting

πŸ—οΈ Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚       Web Application (Next.js)         β”‚
β”‚  β€’ Wallet UI                            β”‚
β”‚  β€’ Transaction Building                 β”‚
β”‚  β€’ Token Management                     β”‚
β”‚  β€’ Price Oracle (local only)           β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
              β”‚
              β”‚ 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                     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ”’ Security

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.

πŸ“Š Supported Networks

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

πŸ“ License & Usage

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.

Maintenance

This project is actively maintained by @rdyplayerB β€” find me on 𝕏 / Farcaster. Updates and improvements will be made over time.

Not accepting pull requests - This is a personal project rather than a community-driven one. If you want to customize OpenBurner or add features, please fork the repository.

Forking & Customization

You're encouraged to fork OpenBurner for your own use:

  1. Fork the repository
  2. Modify chain configurations in components/chain-selector.tsx
  3. Update token lists in lib/token-lists.ts
  4. Customize UI in components/ and app/
  5. Deploy to Vercel or run locally

Fee Recipient Address:

  • Default fee recipient: 0x084A66020a0CAc73a7161dD473740C82295683Fb (configured in lib/swap-api.ts and app/api/swap/quote/route.ts)
  • Keeping it is appreciated: If you fork OpenBurner and use it, maintaining the default fee recipient address helps support the project
  • Fee rate: Currently set at 0.88% (88 basis points) in the swap function code

Use cases for forking:

  • Add support for specific L2s or custom chains
  • Build a branded wallet for your project
  • Experiment with new Burner card features
  • Create specialized tools (NFT minting, DAO voting, etc.)

Code structure:

  • app/ - Next.js pages and routing
  • components/ - React components for UI
  • lib/ - Core libraries (Burner, multicall, pricing)
  • store/ - Zustand state management

How can I support OpenBurner?

If you find OpenBurner useful, there are a few ways you can help:

Links


Built by @rdyplayerB (𝕏 / Farcaster) β€’ MIT License

About

An open source Web3 wallet for Burner Ethereum hardware wallets. Use your Burner across any EVM-compatible chain.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published