Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/aeternity/aepp-sdk-go
Golang SDK to interact with the Æternity blockchain
https://github.com/aeternity/aepp-sdk-go
aeternity blockchain go golang sdk sdk-go
Last synced: 3 months ago
JSON representation
Golang SDK to interact with the Æternity blockchain
- Host: GitHub
- URL: https://github.com/aeternity/aepp-sdk-go
- Owner: aeternity
- License: isc
- Created: 2018-08-14T14:14:03.000Z (over 6 years ago)
- Default Branch: develop
- Last Pushed: 2023-12-19T12:28:55.000Z (about 1 year ago)
- Last Synced: 2024-10-31T17:39:27.638Z (3 months ago)
- Topics: aeternity, blockchain, go, golang, sdk, sdk-go
- Language: Go
- Size: 1.79 MB
- Stars: 18
- Watchers: 9
- Forks: 10
- Open Issues: 22
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Authors: AUTHORS
Awesome Lists containing this project
- awesome-aeternity - Go
- awesome-aeternity - aepp-sdk-go - Iris compatible, some features (e.g. `PayingForTx`) missing. (Development / Software Development Kits (SDKs))
README
# aepp-sdk-go
[![Go Report Card](https://goreportcard.com/badge/github.com/aeternity/aepp-sdk-go)](https://goreportcard.com/report/github.com/aeternity/aepp-sdk-go) [![GoDoc](https://godoc.org/github.com/aeternity/aepp-sdk-go?status.svg)](https://godoc.org/github.com/aeternity/aepp-sdk-go)golang sdk for aeternity blockchain
## Setup
`go get github.com/aeternity/aepp-sdk-go/v9`If your project uses Go Modules (go.mod, go.sum files), you must include the major version in the import line like this:
`import github.com/aepp-sdk-go/v9/aeternity`If your project won't use Go Modules (no go.mod, go.sum files), ensure your `$GOPATH/src/github.com/aeternity/aepp-sdk-go` is on the correct branch. Then your import should be:
`import github.com/aepp-sdk-go/aeternity`## Contextual Knowledge
Every transaction submitted to a node needs a nonce (to ensure its uniqueness), a TTL (how long, in blocks, should the transaction stay in the mempool). Signing a transaction includes the `NetworkID` as well, so a transaction meant for `ae_uat` (testnet) won't make it onto `ae_mainnet` (mainnet). The SDK communicates with the node and/or Sophia compiler over a HTTP REST API to find the current account nonce/current height/broadcast the transaction etc.In short, creating a transaction always follows this pattern:
1. Find the account nonce, get the transaction TTL (in blocks)
2. Make the transaction
3. Sign the transaction with a given network ID
4. Broadcast it to a node of your choosing## Where to find examples
All examples are in godoc.org, except the integration tests.
General workflow code examples are in `package aeternity`, or check out the integration tests in `package integration_test`
Account, HD wallet management in `package account`
etc.## Where to ask for help
[aeternity forum](https://forum.aeternity.com/c/aepplications/sdk)
[rocketchat](https://devchat.aeternity.com/)