Skip to main content

Environment Setup

This guide provides a quick reference for setting up and running a local PATH instance in Tilt.

It is a pre-requisite for the following protocol-specific guides:

Table of Contents

Development Environment

PATH uses a Kubernetes-based local development environment. 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.

Prerequisites

1. Clone the Repository

git clone https://github.com/buildwithgrove/path.git
cd ./path

2. Install Required Tools

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

Development Tools:

tip

To install all dependencies automatically:

make install_deps

3. Setup Envoy Proxy

Setup all the configurations to enable authorization, service aliasing, and rate limiting:

make init_envoy

This will generate four configuration files:

  • .allowed-services.lua
  • .envoy.yaml
  • .ratelimit.yaml
  • .gateway-endpoints.yaml
tip

For a quick initial setup, choose Option 2 (no authorization) when prompted.

4. Choose Your Protocol

ProtocolVersionStatusNetworkDocumentation
Shannonv1BetaTestNetShannon Protocol Guide
Morsev0OriginalMainNetMorse Protocol Guide

Additional Resources