WalletConnect / walletconnect-monorepo

WalletConnect Monorepo
Apache License 2.0
1.46k stars 714 forks source link

Algorand - new chain request #2538

Closed algoanne closed 1 year ago

algoanne commented 1 year ago

Adding Algorand to the Explorer

  1. JSON-RPC spec for Wallets.

Not an EVM based blockchain. No current support for JSON-RPC, our REST API is defined by this OpenAPI v2 specification: https://github.com/algorand/go-algorand/blob/master/daemon/algod/api/algod.oas2.json

  1. Write a CASA namespace spec if not already available for this namespace.

GitHub Link: https://github.com/ChainAgnostic/namespaces/tree/main/algorand

  1. namespaces: algorand

  2. chains:

mainnet algorand:wGHE2Pwdvd7S12BL5FaOP20EGYesN73k

testnet algorand:SGO1GKSzyE7IEPItTxCByw9x8FmnrCDe

betanet algorand:mFgazF-2uRS1tMiL9dsj01hJGySEmPN2

  1. RPC endpoints - N/A, providing our API instead

https://developer.algorand.org/docs/rest-apis/algod/

  1. SLIP-0044 coin type:

283 | 0x8000011b | ALGO | Algorand

bkrem commented 1 year ago

Thank you for the submission @algoanne 🙏

algorand namespace + chains have been added to https://cloud.walletconnect.com

drichar commented 1 year ago

@bkrem WalletConnect v1 schema for Algorand had the algo_signTxn RPC method: https://developer.algorand.org/docs/get-details/walletconnect/walletconnect-schema/#algo_signtxn

Will this be true for v2 as well? Or did it need to be specified for RPC Endpoints in the new chain request?

bkrem commented 1 year ago

@drichar The JSON-RPC request/response contract between WalletConnect clients (i.e. dapp <-> wallet) is unchanged in v2, and it continues to be agnostic to the concrete payloads exchanged between clients.

So the same schema should still apply yes 👍

The RPC Endpoints section in the chain request is specifically for blockchain-facing RPC interactions (e.g. querying the chain). As an example, an equivalent for Polygon would https://polygon-rpc.com.

Regarding the algo_ prefixed client<->client RPC methods, I'd recommend adding an Algorand RPC reference to the WalletConnect docs. Here's the latest addition for comparison: https://docs.walletconnect.com/2.0/advanced/rpc-reference/xrpl-rpc