Skip to content

Getting Started

bhechinger edited this page Nov 14, 2022 · 2 revisions

Required Software

The following items are required to build and run the services associated with the project.

Golang

The minimum supported version of Go is 1.18. To upgrade your installation of Go, see the documentation.

Ethereum and Solidity

This project runs a version of Ethereum locally. It also uses the Solidity programming language for smart contract development. To install Ethereum and Solidity use Homebrew. The makefile has a command called dev.setup to help.

https://geth.ethereum.org/docs/install-and-build/installing-geth
https://docs.soliditylang.org/en/v0.8.11/installing-solidity.html

Staticcheck

This project uses staticcheck as the linter for code correctness and Go idioms. Running tests will require the use of staticcheck. Information on installing staticcheck can be found here.

Go Vulnerability

This project uses govulncheck for vulnerability management. Running tests will require the use of govulncheck. Information on installing govulncheck can be found here.

Downloading The Project

The recommended option is to use the git clone command and clone the project anywhere on disk.

$ cd $HOME
$ mkdir code
$ cd code
$ git clone https://github.com/ardanlabs/smartcontract
$ cd smartcontract

Install the Dependences

To install Ethereum (geth) and the Solidity compiler, run this make command. (Requires brew)

$ make dev.setup