Skip to content

rdyplayerB/openburner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

283 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

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
  • πŸ“± Flexible Connectivity - Use a desktop USB NFC reader (HaLo Bridge) locally, or turn your phone into the reader via the HaLo Gateway when hosted β€” scan a QR, tap your card. Hosted sessions stay alive through brief phone sleeps so you keep working without re-pairing
  • 🌐 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 (requires a 0x API key β€” your own locally, or one configured by the deployer when hosted)
  • πŸ–ΌοΈ NFT Management - View, receive, and send ERC-721 & ERC-1155 collectibles with a gallery view, full detail pages, and OpenSea links. Auto-discovery via an optional Alchemy NFT API key, plus manual add-by-contract on any chain
  • πŸ”— WalletConnect - Connect to dApps by scanning a WalletConnect QR (powered by Reown). A header chip shows connected dApps with a live indicator and lets you manage or disconnect them
  • πŸ“Š Real-Time Prices - CoinGecko price feeds, available in both local and hosted modes (hosted needs a CoinGecko API key β€” the free Demo tier works)
  • πŸš€ 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 with a rate-limited server-side proxy
  • Resilient Gateway Sessions - Hosted phone-as-reader connections survive brief phone sleeps and resume in place, no constant QR re-scanning
  • Burner Card Integration - NFC-based hardware wallet support (local bridge or hosted gateway)
  • Modern Stack - Next.js 14, TypeScript, Tailwind CSS, ethers.js v6
  • State Persistence - localStorage-backed state management with Zustand

Local vs Hosted

OpenBurner runs in two modes, selected by NEXT_PUBLIC_APP_MODE:

Local (local) β€” desktop + USB NFC reader via HaLo Bridge

  • Connects to your Burner through a local NFC reader
  • Full functionality (pricing, swaps, NFTs, sends) using your own API keys
  • Best for development and power users

Hosted (hosted) β€” phone as the NFC reader via HaLo Gateway

  • Pair by scanning a QR with your phone, then tap your Burner to sign β€” no reader or bridge install needed
  • Optional integrations are enabled per deployment with server-side keys:
    • Pricing β€” COINGECKO_API_KEY (free Demo tier works) + NEXT_PUBLIC_PRICING_ENABLED=true
    • NFTs β€” ALCHEMY_API_KEY
    • Swaps β€” ZEROX_API_KEY
    • dApp connections β€” NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID
  • Users can also bring their own keys in Settings (stored only in their browser, used for read-only data)

Any integration without a configured key is simply hidden β€” the wallet's core send/receive/manage functions always work. OpenBurner uses 0x's standard swap API (not gasless), so users 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                         β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
              β”‚
              β”‚ 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                     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Hosted mode replaces the local HaLo Bridge + USB reader with the HaLo Gateway, using your phone's NFC as the reader (pair via QR, tap to sign). Keys still never leave the card's secure element either way.

πŸ”’ 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

 
 
 

Contributors