Summary
Selecting the "Ledger" option on the Wallet page (reached via x.forbole.com → redirects to https://lite.desmos.network/) throws a Buffer is not defined error immediately, before any Ledger device interaction (no USB permission prompt, no app-selection step). The Keplr option is not affected by this specific error. This makes it impossible to connect a Ledger device to Lite-Dipper at all.
Steps to reproduce
- Go to
https://lite.desmos.network/wallet (also reachable via x.forbole.com, which redirects here).
- Click "Connect wallet" / open the Wallet page.
- Click the "Ledger" card ("Direct browser signing path with account selection. Use the Desmos app on the Ledger device.").
- The error
Buffer is not defined is displayed inline under the wallet-selection cards.
Expected behavior
Selecting "Ledger" should proceed to the account-selection / device-connection flow (WebUSB/WebHID permission prompt), allowing the user to pick an HD account and connect their Ledger with the Desmos app open.
Actual behavior
An unhandled JavaScript error, Buffer is not defined, appears immediately and the flow stops. No connection attempt to the physical device is made.
Environment
- Reported by user: Chrome on macOS.
- Independently reproduced in a Chromium-based browser (Chrome/148, Electron/42.7.0, macOS) — same result, same error text, occurring purely client-side with no Ledger device attached.
Likely cause (hypothesis, not confirmed)
Buffer is a Node.js global that isn't available in browsers by default. Libraries commonly used for Cosmos/Ledger integration (e.g. @ledgerhq/hw-app-cosmos, @cosmjs/*, bech32) often assume Buffer exists. Bundlers like Webpack 4 used to polyfill it automatically, but modern bundlers (Vite, Webpack 5, esbuild) do not unless explicitly configured (e.g. vite-plugin-node-polyfills, or aliasing buffer and injecting it as a global). This looks like a missing polyfill/build-config issue in the Ledger code path specifically, since the Keplr path (which doesn't rely on those Node-oriented libs client-side) does not hit this error.
Impact
Any user relying on a Ledger hardware wallet — the safer option for holding funds — currently cannot connect to Lite-Dipper at all. Keplr remains usable, but this removes hardware-wallet support entirely for the explorer's wallet page.
Additional notes
No transaction signing or address derivation could be attempted, since the flow fails before reaching that stage. This was reported after independently verifying (via desmosd/Ledger CLI outside the browser) that the Ledger device itself and the Desmos Ledger app work correctly for address derivation — the problem is isolated to the Lite-Dipper web app's Ledger integration.
Summary
Selecting the "Ledger" option on the Wallet page (reached via
x.forbole.com→ redirects tohttps://lite.desmos.network/) throws aBuffer is not definederror immediately, before any Ledger device interaction (no USB permission prompt, no app-selection step). The Keplr option is not affected by this specific error. This makes it impossible to connect a Ledger device to Lite-Dipper at all.Steps to reproduce
https://lite.desmos.network/wallet(also reachable viax.forbole.com, which redirects here).Buffer is not definedis displayed inline under the wallet-selection cards.Expected behavior
Selecting "Ledger" should proceed to the account-selection / device-connection flow (WebUSB/WebHID permission prompt), allowing the user to pick an HD account and connect their Ledger with the Desmos app open.
Actual behavior
An unhandled JavaScript error,
Buffer is not defined, appears immediately and the flow stops. No connection attempt to the physical device is made.Environment
Likely cause (hypothesis, not confirmed)
Bufferis a Node.js global that isn't available in browsers by default. Libraries commonly used for Cosmos/Ledger integration (e.g.@ledgerhq/hw-app-cosmos,@cosmjs/*,bech32) often assumeBufferexists. Bundlers like Webpack 4 used to polyfill it automatically, but modern bundlers (Vite, Webpack 5, esbuild) do not unless explicitly configured (e.g.vite-plugin-node-polyfills, or aliasingbufferand injecting it as a global). This looks like a missing polyfill/build-config issue in the Ledger code path specifically, since the Keplr path (which doesn't rely on those Node-oriented libs client-side) does not hit this error.Impact
Any user relying on a Ledger hardware wallet — the safer option for holding funds — currently cannot connect to Lite-Dipper at all. Keplr remains usable, but this removes hardware-wallet support entirely for the explorer's wallet page.
Additional notes
No transaction signing or address derivation could be attempted, since the flow fails before reaching that stage. This was reported after independently verifying (via
desmosd/Ledger CLI outside the browser) that the Ledger device itself and the Desmos Ledger app work correctly for address derivation — the problem is isolated to the Lite-Dipper web app's Ledger integration.