LanfordCai / rosetta-sdk-go

Rosetta Client Go SDK

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Rosetta

Rosetta SDK

Go SDK to create and interact with Rosetta API implementations

Overview

The rosetta-sdk-go provides a collection of packages used for interaction with the Rosetta API specification. Much of the code in this repository is generated from the rosetta-specifications.

Documentation

Before diving into the SDK, we recommend taking a look at the Rosetta API Docs:

Packages

  • Types: Auto-generated Rosetta types
  • Client: Low-level communication with any Rosetta server
  • Server: Simplified Rosetta API server development
  • Asserter: Validation of Rosetta types
  • Fetcher: Simplified and validated communication with any Rosetta server
  • Parser: Tool for parsing Rosetta blocks
  • Syncer: Sync Rosetta blocks with customizable handling
  • Reconciler: Compare derived balances with node balances
  • Keys: Cryptographic operations for Rosetta-supported curves
  • Constructor: Coordinate the construction and broadcast of transactions

Examples

The packages listed above are demoed extensively in examples and are utilized throughout the rosetta-cli.

Development

  • make deps to install dependencies
  • make gen to generate types and helpers
  • make test to run tests
  • make lint to lint the source code (including generated code)
  • make release to check if code passes all tests run by CircleCI

License

This project is available open source under the terms of the Apache 2.0 License.

© 2020 Coinbase

About

Rosetta Client Go SDK

License:Apache License 2.0


Languages

Language:Go 97.8%Language:HTML 1.5%Language:Shell 0.5%Language:Makefile 0.2%