aboutsummaryrefslogtreecommitdiffstats
path: root/src/style.css
Commit message (Collapse)AuthorAgeFilesLines
* Move Backup from header to its own tab (away from Logout)Adam Soltys2026-06-151-5/+0
| | | | | | | | Prevents accidental Logout clicks when reaching for Backup. Backup is now a tab rendering the gated recovery-phrase reveal inline; Logout is the only header button. The phrase re-masks whenever tabs change. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
* Gate recovery-phrase reveal behind a warning + Proceed stepAdam Soltys2026-06-151-0/+1
| | | | | | | | | Opening Backup now shows the warning with the 12 words masked (••••••) and a Proceed/Cancel choice. The real words and passphrase are kept out of the DOM until Proceed, so the user reads the "make sure nobody is watching" warning before anything sensitive renders. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
* Add Backup button to view recovery phrase + passphrase againAdam Soltys2026-06-151-0/+5
| | | | | | | | Anyone who skipped backup verification (or just wants to re-check) can now reveal the seed words and passphrase from a header "Backup" button that opens a warning-gated modal with copy actions. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
* Rebuild as single-file offline BIP84 walletAdam Soltys2026-06-141-0/+217
Replace the SvelteKit/daisyUI prototype with a vanilla JS + hand-rolled CSS app that Bun bundles (code + scure/noble crypto + QR + CSS) into one self-contained dist/index.html runnable offline from file://. Wallet core (src/wallet.js): - BIP84 native-segwit HD wallet from BIP39 seed (+optional passphrase) - gap-limit scan of receive/change chains, aggregate balance, tx history - fresh receive/change addresses; signs with witnessUtxo only (enables offline signing with no prev-tx fetch) - coin selection + fee estimation via btc-signer selectUTXO; send-max; manual coin control - offline JSON snapshot export/import (keyless) + signed-tx hex/QR export - realtime mempool.space WebSocket: track-addresses -> debounced auto refresh of balances/history (no polling); live status badge UI (src/app.js): clean light paper-wallet; create (with optional, skippable backup verification) / import flow; receive (QR) / send / history / coins / tools tabs; clickable logo returns home. API (src/api.js): mempool.space wrapper with retry/backoff for scan-burst rate limiting; single network choke-point for offline enforcement. Verified: BIP84 spec vectors, build/sign/parse for auto/max/manual flows, snapshot roundtrip, live scan + WebSocket, headless-Chrome UI smoke tests. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>