Skip to content

Feature Proposal: Multi-Wallet Support for commons-wallet #106

@rotilho

Description

@rotilho

Summary

With the development of the API Wallet, it has become clear that the current design of the commons-wallet library — originally built to support simple light wallets — is too limited to accommodate more complex use cases.

The API Wallet will be created and together the Node will introduce new APIs in the node that make it possible to build multi-account wallets. This opens the opportunity to evolve commons-wallet to properly support multi-wallet structures, where:

  • One wallet can manage multiple accounts.
  • Light Wallet can implement multi-account support much more easily than with the current design.

What will change?

We will extend and refactor the commons-wallet library to:

  • Introduce a Wallet abstraction that manages multiple Accounts.
  • Adapt existing operations (sending, receiving, signing, etc.) to work in the context of a selected account inside a wallet.
  • Maintain clear separation of concerns between wallet-level and account-level operations.

Versions to be released

There will be likely two variants of the library:

  1. API Wallet Version
    • Communicates with the new API Wallet service.
    • Designed for light clients that do not interact with the node directly.
  2. Direct Node Version
    • Communicates with the node directly using the light APIs and using local signing

Both versions will share as much code and abstractions as possible to minimize duplication and keep the maintenance overhead low.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions