Skip to content



Make sure you have the following minimum hardware requirements.

  • A Linux-based OS (e.g., Ubuntu Server 22.04 LTS).
  • At least 8GB RAM with a 2-core CPU.
  • An AMD64 architecture system.


Make sure you have the following minimum software requirements.

Download link Version Check version
Node ^20 node --version
npm ^10 npm --version
Foundry ^0.2 forge --version
jq ^1.6 jq -V

Sepolia access


You can run your own Sepolia node if you wish and we recommend this for a production set up. However, for simplicity and brevity, we demonstrate by using a node provider.

You will need the following:


Use a public faucet to get Sepolia test ETH.

Configuration files

We will be working with two separate .env files.

  • One .env file resides in the contracts project directory. We will set this up in the contract set up section.
  • Another .env resides in a shared system directory so that it is accessible to the node and all running processes.

Create a folder /tmp/cdk/ to store the shared .env file which will be used by all running processes.

mkdir /tmp/cdk/


  • Any files in the tmp/ directory are deleted on shutdown.
  • For this reason, we recommend that you save this folder in your home directory once the shared configuration set up is complete.

Shared environment variables

Create a .env file to store the environment variables that all running processes will share. This shared .env file allows us to use jq and tomlq to easily setup the configuration for the node and running processes.

After adding a few variables to this file in the next set up section, this file is populated with more environment variables during the node set up step and is then accessed by the system throughout the deploy node configuration step and node and services run step.

nano /tmp/cdk/.env


Don’t forget: The system removes this file on shutdown.

Last update: February 14, 2024
Authors: kmurphypolygon