Read through CONTRIBUTING.md for a general overview of our contribution process. Then check out our list of good first issues to find something fun to work on!
root ├── agents: agents contain all the agents used in optimistic messaging ├── charts: The helm charts used for deploying sanguine related services ├── contrib: Devops related tools │ ├── git-changes-action: Github action for identifying changes in dependent modules in a go workspace │ ├── release-copier-action: Github action for copying releases from one repo to another │ ├── terraform-provider-iap: Terraform provider used for bastion proxy tunneling │ ├── terraform-provider-helmproxy: Terraform provider that allows helm to be proxied through an iap bastion proxy │ ├── terraform-provider-kubeproxy: Terraform provider that allows kube to be proxied through an iap bastion proxy │ ├── tfcore: Terraform core utilities + iap utilities ├── core: The Go core library with common utilities for use across the monorepo ├── ethergo: Go-based ethereum testing + common library ├── packages │ ├── contracts-core: Core contracts used for synapse, powered by Foundry │ ├── explorer-ui: Explorer UI ├── services │ ├── explorer: Bridge/messaging explorer backend │ ├── omnirpc: Latency aware RPC Client used across multiple-chains at once │ ├── scribe: Generalized ethereum event logger ├── tools │ ├── abigen: Used to generate abigen bindings for go │ ├── bundle: Modified version of go bundler with improved shadowing support │ ├── module copier: Used to copy internal modules and export methods for testing
Clone the repository, open it, and install nodejs packages with yarn
:
git clone https://github.com/synapsecns/sanguine
cd sanguine
yarn install
Using nvm
, install the correct version of NodeJS.
nvm use
To build all of the TypeScript packages, run:
yarn clean
yarn build
Packages compiled when on one branch may not be compatible with packages on a different branch. You should recompile all packages whenever you move from one branch to another. Use the above commands to recompile the packages.