Beam-go interfaces with the wallet-api
binary of the Beam ecosystem.
The goal is to provide robust request-response structures, using sensible defaults for optionals, and providing an architecture to resist future breaking changes.
Non-idiomatic to Go, beam-go
makes the use of pointers to indicate optionality on function inputs, and options bag inputs.
the to
package, and all enum types feature *ToPtr()
type functions for constant and literal values.
Please read the Beam Contribution Guide.
Beam-go records its tests using go-vcr
.
Please, when submitting a PR that modifies the functionality of existing APIs, delete the relevant file in the recordings
folder in the relevant package, and re-run tests yourself before submitting the PR.
Adding new tests does not require this. It is recommended to run beam-node
with --FakePoW 1 --storage testnode.db
and you must have your wallet-api
available on port 5000 to line up with the existing configuration.