Skip to content

Latest commit

 

History

History
93 lines (74 loc) · 2.42 KB

README.md

File metadata and controls

93 lines (74 loc) · 2.42 KB

GoDoc

A Tezos Go Library

Go Tezos is a GoLang driven library for your Tezos node.

Installation

Get goTezos

go get github.com/alex-dodich/go-tezos

Quick Start

Go Tezos is split into multiple services underneath to help organize it's functionality and also makes the library easier to maintain.

To understand how Go Tezos works, take a look at the GoTezos Structure:

type GoTezos struct {
	Client    tzc.TezosClient
	Constants network.Constants
	Block     block.TezosBlockService
	Snapshot  snapshot.TezosSnapshotService
	Cycle     cycle.TezosCycleService
	Account   account.TezosAccountService
	Delegate  delegate.TezosDelegateService
	Network   network.TezosNetworkService
	Operation operations.TezosOperationsService
	Contract  contracts.TezosContractsService
	Node      node.TezosNodeService
}

You can see GoTezos is a wrapper for several services such as block, Snapshot, Cycle, Account, Delegate, Network, Operation, Node, and Contract. Each service has it's own set of functions. You can see examples of using the Block and SnapShot service below.

Getting A Block

package main

import (
	"fmt"
	goTezos "github.com/alex-dodich/go-tezos"
)

func main() {
	gt, err := goTezos.NewGoTezos("http://127.0.0.1:8732")
	if err != nil {
		fmt.Printf("could not connect to network: %v", err)
	}

	block, err := gt.Block.Get(1000)
	if err != nil {
		fmt.Println(err)
	}
	fmt.Println(block)
}

Getting a Snapshot For A Cycle

	snapshot, err := gt.Snapshot.Get(50)
	if err != nil {
		fmt.Println(err)
	}
	fmt.Println(snapshot)

More Documentation

See github pages

Contributing

The Makefile

The makefile is there as a helper to run quality code checks. To run vet and staticchecks please run:

make checks

Contributers: A Special Thank You

License

This project is licensed under the MIT License - see the LICENSE.md file for details