Thank you for your interest in contributing to Gidari! Please make sure to fork this repository before working through issues.
See the Gidari MVP project list for open issues, please only focus on issues in the "Scheduled" column. Issues labeled with "good first issue" are excellent starting points for new engineers. If you have completed an issue:
- Fork this repository
- Create a pull request pointing to "main"
- Add a reviewer
All pull requests are subject to the GitHub workflow CI defined in the Actions section of the repository.
To develop locally you will need to install the following dependencies:
- Go: https://go.dev/doc/install
- Google protobuf compiler (protoc):
Download the latest release (e.g., "protoc-21.8-win64.zip") under "Assets" https://github.com/protocolbuffers/protobuf/releases
Add to PATH by extracting to "C:\protoc-XX.X-winXX" (Be sure to replace 'X' with your appropriate release and system type)
- protoc-gen-go: https://developers.google.com/protocol-buffers/docs/gotutorial#compiling-your-protocol-buffers
gofumpt
: https://github.com/mvdan/gofumptgolangcli-lint
: https://github.com/golangci/golangci-lint#install-golangci-lint
To test run
make tests
You may want to test the Gidari CLI with changes you make in Gidari. To do this we will use the go.mod repalce directive. You will need to fork the github.com/alpstable/gidari-cli repository and add the following to the go.mod file:
replace github.com/alpstable/gidari => your/local/gidari/fork
Then run make
in the gidari-cli fork, this will create a binary that uses your local gidari fork.