Skip to content

Publish TypeScript client bindings for integrators #77

Description

@joelpeace48-cell

Problem

An integrating gateway currently has to hand-roll contract invocation from the
raw interface. That is friction at exactly the point where adoption is decided,
and every integrator will build a slightly different, slightly wrong version of
the same code.

What to do

  • Generate bindings with stellar contract bindings typescript as part of the
    release process, so they cannot drift from the deployed interface.
  • Publish to npm under an org scope, versioned in step with contract releases.
  • Layer a thin ergonomic wrapper over the generated output: typed errors rather
    than raw codes, and network presets carrying the deployed addresses.
  • Include a runnable example that attests and reads back, in under twenty lines.
  • Document the compatibility matrix: which SDK version works with which
    deployed contract version.

Acceptance criteria

  • Bindings generated in CI, not by hand
  • Published to npm with versioning tied to contract releases
  • Ergonomic wrapper with typed errors and network presets
  • Runnable quickstart example
  • Compatibility matrix documented

Notes

The frontend and backend should consume this package too. If it is good enough
for our own code it is probably good enough for an integrator, and dogfooding
is what keeps it honest.

Metadata

Metadata

Assignees

No one assigned

    Labels

    GrantFox OSSIssue tracked in GrantFox OSSThird CampaignCampaign: Third Campaignarea:sdkClient bindings and integrator toolingdifficulty:mediumFamiliar patterns; touches a few files or conceptspriority:highNeeded for the next milestonetype:featNew capability

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions