github.com/aeternity/aepp-sdk-go/v7@v7.0.1/README.md (about) 1 # aepp-sdk-go 2 [![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) 3 4 golang sdk for aeternity blockchain 5 6 ## Setup 7 `go get github.com/aeternity/aepp-sdk-go` 8 9 If your project uses Go Modules (go.mod, go.sum files), you must include the major version in the import line like this: 10 `import github.com/aepp-sdk-go/v7/aeternity` 11 12 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: 13 `import github.com/aepp-sdk-go/aeternity` 14 15 ## Contextual Knowledge 16 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. 17 18 In short, creating a transaction always follows this pattern: 19 1. Find the account nonce, get the transaction TTL (in blocks) 20 2. Make the transaction 21 3. Sign the transaction with a given network ID 22 4. Broadcast it to a node of your choosing 23 24 ## Where to find examples 25 All examples are in godoc.org, except the integration tests. 26 General workflow code examples are in `package aeternity`, or check out the integration tests in `package integration_test` 27 Account, HD wallet management in `package account` 28 etc. 29 30 ## Where to ask for help 31 [aeternity forum](https://forum.aeternity.com/c/aepplications/sdk) 32 [rocketchat](https://devchat.aeternity.com/)