Skip to content

feat: data provider abstraction #39

Open
@Vardominator

Description

@Vardominator

Motivation

MIDL is an up-and-coming Bitcoin scaling layer that will enable seamless interactions with smart contracts without bridging out of the Bitcoin ecosystem. Maestro would like to become the go-to data provider for this transaction management library while helping build a generic data provider abstraction.

Part 1: Build data provider abstraction

  • https://github.com/midl-xyz/midl-js/tree/main/packages/core/src/networks
  • Implement generic data provider interface with common inputs and response schemas. Any future provider must follow this interface, albeit with potentially missing functions.
  • Implement existing providers using this interface
  • Implement Maestro provider
  • Add config logic for selecting provider, network and Maestro API key

Implement existing actions for the Maestro provider

Other general improvements

Part 2 (future PR): Implement transaction building endpoints on Maestro side and add to provider

  • edictRune
  • etchRune
  • more TBD

Part 3 (future PR): MIDL specific endpoints

  • TBD

Part 4: Rejoice

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions