Conversation
- Register 'algovoi' in WalletManager (NetworkContext) alongside existing AVM wallets - Add AlgoVoi to the wallet selection modal (WalletModal) for all AVM networks - Mark AlgoVoi as a universal wallet (supports both Algorand and Voi Mainnet) - Connection handler uses window.algorand directly as fallback until TxnLab/use-wallet#434 lands; upgrades automatically to use-wallet path once available - Availability check detects the extension via window.algorand.isAlgoVoi so the button appears even before the npm package ships WalletId.ALGOVOI Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
Hey @drichar — just wanted to check in on this one. AlgoVoi is a browser extension wallet for Algorand and Voi with native ARC-27 support, and getting it into use-wallet would really help with dApp compatibility across the ecosystem (a few Voi dApps are already waiting on this to land before they can add AlgoVoi support). No pressure at all — just appreciate any review when you get a chance. Happy to address any feedback or changes needed. 🙏 |
|
Bumping this for visibility — wanted to share some context on where this fits in a wider rollout. What's shipped since this PR was openedSince submitting this PR, AlgoVoi has launched full implementations across three payment protocols:
All three are smoke-tested with real on-chain USDC payments across Algorand, VOI, Hedera, and Stellar. eCommerce platform adaptersAlgoVoi also has payment gateway adapters for 17+ eCommerce platforms (WooCommerce, Shopify, PrestaShop, Magento, OpenCart, and more), all open-source: Why use-wallet matters hereThe AlgoVoi browser extension is the user-facing wallet that completes the loop — dApps built with Happy to answer any questions or make changes if the implementation needs adjusting for the v4 API. |
Add AlgoVoi as a named wallet provider so dApps using use-wallet can display it in their connect modals alongside Pera, Defly, etc. AlgoVoi is an Algorand + Voi browser extension wallet that exposes an ARC-0027 compliant provider at window.algorand. The implementation calls the injected provider directly (no external SDK dependency). Changes: - Add ALGOVOI to WalletId enum - Create AlgoVoiWallet extending BaseWallet - Register in createWalletMap and exports - Add unit tests (connect, disconnect, resumeSession, metadata)
Remove unused `logger` and `Mock` imports flagged by eslint.
3ff0feb to
791dc4d
Compare
Summary
WalletId.ALGOVOI)window.algorandprovider directly — no external SDK dependency requiredChanges
types.ts— AddALGOVOI = 'algovoi'toWalletIdenum,WalletMap, andWalletOptionsMapalgovoi.ts— NewAlgoVoiWalletclass extendingBaseWalletwindow.algorand?.isAlgoVoi === truealgorand#initializedevent if not yet injectedconnect(),disconnect(),resumeSession(),signTransactions()algosdk.Transaction[]andUint8Array[]input formatsindex.ts— ExportAlgoVoiWalletutils.ts— Register increateWalletMap()algovoi.test.ts— Unit tests for connect, disconnect, resumeSession, metadatadApp usage
Test plan
pnpm buildsucceeds for@txnlab/use-walletpackage🤖 Generated with Claude Code