Installation
Install the required peer dependency:Basic usage
Configuration
The Lute wallet accepts the following configuration options:Name of your dApp to display in Lute Wallet connection prompts.
Type definition
Features
Web-based wallet
Lute is a web-based wallet that doesn’t require browser extensions or mobile apps. Users access their accounts directly through the web interface.Data signing support
Lute Wallet supports thesignData method for signing arbitrary data, enabling authentication flows like Sign-In with Algorand (SIWA).
Error handling
Lute provides detailed error codes for transaction signing failures:Methods
connect()
Initiates connection to Lute Wallet. Opens the Lute interface for account selection. Returns:Promise<WalletAccount[]>
disconnect()
Disconnects from Lute Wallet and clears the local session. Returns:Promise<void>
signTransactions()
Signs transactions using Lute Wallet. The user must approve the transaction in the Lute interface. Parameters:txnGroup: Transaction or array of transactions to signindexesToSign?: Optional array of indexes to sign
Promise<(Uint8Array | null)[]>
Throws: SignTxnsError with error code and message
signData()
Signs arbitrary data using Lute Wallet. Useful for authentication flows. Parameters:data: Base64-encoded data to signmetadata: Signing metadata including scope and encoding
Promise<SignDataResponse>
Throws: SignDataError with error code and message
Example:
Session management
Lute Wallet sessions are managed locally. Sessions persist across page reloads as long as the wallet state is stored.Platform support
- Web: Full support
- Mobile: Full support (mobile web)
- Desktop: Full support