Environment Setup (< 10 min)
This guide provides instructions required to setup your environment for local development. locally in a development environment.
It is a pre-requisite for both the:
- Shannon Protocol Guide: Pocket Network v1 (Private MainNet as of 04/2025)
- Morse Protocol Guide: For the original Morse protocol (Public MainNet as of 2020)
Table of Contents
Development Environment Details
PATH's development mode uses a Kubernetes-based local development environment with Tilt.
We use Kind (Kubernetes in Docker) for running the local Kubernetes cluster, as it provides better compatibility with Tilt's image building process compared to Docker Desktop's Kubernetes cluster.
Technical Pre-Requisites & Setup
1. Clone the Repository
git clone https://github.com/buildwithgrove/path.git
cd ./path
2. Install Required Tools
tip
To install all dependencies automatically on a Linux system:
make install_deps
The following tools are required to start a local PATH instance:
Local Deployment Tools:
- Docker: Container runtime
- Kind: Local Kubernetes cluster
- kubectl: CLI for interacting with Kubernetes
- Helm: Package manager for Kubernetes
- Tilt: Local Kubernetes development environment
- Graphviz (Debug only): Required for generating profiling & debugging performance
- Relay Util: (Load testing tool): Used to send configurable batches of relays concurrently
Development Tools:
- Uber Mockgen: Mock interface generator for testing
3. Choose Your Protocol
Pick one of these protocols and follow the respective guide.
Protocol | Version (aka) | Status (04/2025) | Network | Documentation |
---|---|---|---|---|
Shannon | v1 | Beta & Private MainNet | TestNet | Shannon Protocol Guide |
Morse | v0 | MainNet (2020) | MainNet | Morse Protocol Guide |